gpt4 book ai didi

javascript - 根据 URL 加载不同的 EJS

转载 作者:搜寻专家 更新时间:2023-11-01 00:14:25 26 4
gpt4 key购买 nike

如果 URL 包含'todos',例如'.../todos/*',他应该加载不同的 EJS 模板 (todos.ejs)。如果 URL 不包含“todos”,将加载正常的 index.ejs。

我尝试了类似下面的方法,但我认为 app.get 的使用是错误的。

if (req.url.indexOf("todos") >= 0) {
app.get('/todos/*', function(req, res) {
res.render('todos', {
title: 'todos page'
});
});
} else {
app.get('/', function(req, res) {
res.render('index', {
title: 'index page'
});
});
}

最佳答案

您可以使用 regular expressions to match URL paths使用 Express,所以:

// Match any URL with '/todos/' in the path:
app.get(/\/todos\//, function(req, res) {
res.render('todos', { title: 'todos page' });
});

// Match the rest:
app.get('*', function(req, res) {
res.render('index', { title: 'index page' });
});

如果您不关心 “todos”两边的斜杠,匹配将变成这样:

app.get(/todos/, ...);

请注意,声明路由处理程序的顺序很重要:您希望首先声明最具体的匹配项(“todos”),最后声明最不具体的(“其余”)。

关于javascript - 根据 URL 加载不同的 EJS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37916300/

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