有没有一种方法可以使用多个优先路径来拥有pug文件?

时间:2019-03-18 19:38:24

标签: node.js express pug

因此,如果我的项目的视图路径组织如下:

views/
  client-1/
  client-2/
  default/
  ...

是否有一种方法可以强制Pug首先查看 client 的文件夹,如果该文件不存在,则可以查看 default ?并使其与include和extends相同吗?

示例:

client1 / list.pug:

extend includes/header
  block content
    div.bold-as-fck 'Hello Client type one!'

default / header.pug:

html
  body
    block content

默认/list.pug:

extend includes/header
  block content
    div.not-as-bold 'Hello Client generic type!'

所以,我希望代码:

  1. 当我说res.render('list')来检查当前客户端的文件夹以查看其是否具有list.pug时,是否使用了default/list.pug一个。
  2. includesextends使用与上面相同的规则。

这可能吗?

请记住,“客户端”的html结构发生了很大变化,不仅像我在上面的示例中使用的那样是一个简单的CSS类。


在这里,一个好的解决方案是替换以下内容:

app.set('views', './views');

通过以下方式:

app.set('views', [path.join(CLIENT_PATH, '/views'), './views']);

数组中项目的顺序将设置要扫描pug文件的路径的优先级顺序,这将是惊人的...但是,已经存在类似的解决方案或其他解决方案了吗?

0 个答案:

没有答案