代码
我希望让我的网页模块化,这样我就不需要一遍又一遍地编写我的内容。我认为我的解决方法是使用ejs库。因此,我已经配置了express和ejs,如下所示:
const app = express();
app.engine('.html', require('ejs').renderFile);
app.set('view engine', 'html');
app.set('views', __dirname + '/wwwroot/views');
我的 views 文件夹结构如下:
wwwroot
static
css
js
views
login
index.html
profile
dashboard.html
templates
inc_header.html
inc_footer.html
我的仪表板包含以下内容。
<% include templates/inc_header.html %>
This is my dashboard
问题
无法包含头文件。我尝试了wwwroot/views/templates/header.html和header.html,但都不起作用。
我的整个服务器配置
app.engine('.html', require('ejs').renderFile);
app.set('view engine', 'html');
app.set('views', __dirname + '/wwwroot/views');
app.use(session({
secret: program.secret || "secret",
resave: true,
saveUninitialized: true
}));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }))
app.use('/', express.static(path.join(__dirname, '/wwwroot/static/')));
Web服务器上的输出
<% include templates/inc_header.html %> 这是我的仪表板
看起来文件不会被渲染?
header.html
的文件! - Quentin