我现在正在构建一个MEAN应用程序。我真的需要开始模块化应用程序,但现在我的Express服务器配置为在一个文件夹中查找Jade视图
app.set('views', path.join(__dirname, '/app/views'));
app.set('view engine', 'jade');
这些帖子的作者显示了分散在不同模块目录中的应用程序的视图文件。
如果我现在尝试这样做,我的Express服务器将无法看到它们。我该怎么做才能让Express能够找到所有Jade的观点?
答案 0 :(得分:0)
views
的基本文件夹,并在views
内创建子文件夹。
例如,views/menu/
,views/header/
。要使用它,你必须这样做
在Express中声明basedir
,以便Jade知道在哪里看你的
通过app.locals.basedir = __dirname + "/views";
进行观察。然后,
在您的Jade文件中,使用include /header/a.jade
,include
/menu/item1.jade
等... 这对你有帮助吗?
答案 1 :(得分:0)
我刚开始在渲染调用中使用模块前缀,并将我的视图基目录设置为模块的父目录。所以,如果我开始:
app/views/page1.jade
app/views/page2.jade
正在做res.render("page1")
,我重组为:
app/module1/page1.jade
app/module2/page2.jade
然后我app.set("views", "app")
然后使用res.render("module1/page1")
进行渲染。