gpt4 book ai didi

node.js - NodeJS Express : different urls for different view directories?

转载 作者:太空宇宙 更新时间:2023-11-04 00:26:16 24 4
gpt4 key购买 nike

根据我所知道的文档,我可以将 Express 4.12.x 设置为使用多个 View 目录,如下所示:

app.set('views', [
__dirname + '/views1',
__dirname + '/views2'
]);

但我想让不同的网址从不同的 View 目录获取 View 。所以我想要这样的东西:

app.get('/views1/:view', function (req, res) {
res.render(req.params.view); //get the views only from /views1
});
app.get('/views2/:view', function (req, res) {
res.render(req.params.view); //get the views only from /views2
});

目前发生的情况是,无论 url 是什么,Express 都会先检查 /views1 中的 :view,然后检查 /views2 中的 :view。我知道这是 Express 的正常行为,但我很想知道是否可以实现我的想法。

最佳答案

重新阅读 Express 文档后,我只是设法通过使用 Express 子应用程序作为中间件来使其工作:

var express = require('express');
var app = express();

var views1app = express();
var views2app = express();

views1app.set('views', __dirname + '/views1');
views1app.set('view engine', 'pug');
views1app.get('/views1/:view', function (req, res) {
res.render(req.params.view);
});

views2app.set('views', __dirname + '/views2');
views2app.set('view engine', 'pug');
views2app.get('/views2/:view', function (req, res) {
res.render(req.params.view);
});

app.use(views1app, views2app);

关于node.js - NodeJS Express : different urls for different view directories?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42657543/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com