我在nodeJs + expressJs中设置部分视图路径时遇到问题。下面是我的目录结构。
目录结构
packages
--Module1
----Views
------sample.ejs
--sharedModule
----Views
------partials
--------Module1.ejs
--------partialHTML.ejs //able to use in index.ejs
------index.ejs //Used : <% include partials/partialHTML%>
ExpressJS:
var express = require('express');
var app = express();
app.set('view engine', 'ejs');
app.set('views', path.join(__dirname, 'packages/sharedModule/views'));
我可以使用'partialHTML.ejs'
在index.ejs
文件中使用<% include partials/partialHTML%>.
。
如何在Module1.ejs
文件下使用Module1/view/sample.ejs
个文件?
答案 0 :(得分:0)
您已将packages/sharedModule/views
设置为您的观看目录,sample.ejs
不在该目录下,它位于另一条路径下。这就是为什么没找到它。
在Linux中,您可以创建一个软链接来指向共享视图Module1/views/sharedviews
==&gt; ../../sharedModule/views
,然后将Module1
设置为视图的根路径 -
app.set('views', path.join(__dirname, 'packages/Module1/views'));
因此,当您查找任何视图时,可以确保找到该视图,因为现在您的views
目录同时拥有Module1
和sharedModule
个视图。