gpt4 book ai didi

javascript - 如何在 Express.js 中定义各个页面

转载 作者:行者123 更新时间:2023-12-03 12:13:26 24 4
gpt4 key购买 nike

我刚刚开始使用express.js,并且无法理解如何定义可以内部链接到的离散“页面”(传统意义上的)。

我使用 Jade 作为模板引擎,我看到它如何将各种组件组合在一起并在 app.js 中引用它们(这是 npm 最初调用的),这样,实际上就是我的“索引” 。很高兴看到有关如何构建 pageA、pageB、pageC 的教程,以便可以通过 <a href="pageA.html"> 链接到它们。 (或 Jade 等效项)。

我假设这是可能的,对吗?

最佳答案

Express.js 本身不提供 URL 生成,仅提供内置路由器。

您需要使用额外的包来执行 URL 生成,或者自己构建它。也许您会在这个问题的答案中找到一些合适的内容:URL generation for routes in express

如果您不关心路由生成并希望对 URL 进行“硬编码”,则需要为每个静态页面添加一个路由,如下所示:

// routes.js
app.get("/pageA.html", function(req, res, next) { res.render("static/page_a", { templateLocals: "here" }) };
app.get("/pageB.html", function(req, res, next) { res.render("static/page_b") };

或者,如果您有很多这样的页面,您可以使用 Controller 来实现:

// static_page_controller.js
module.exports = function(pageTemplate) {
return function(req, res, next) {
return res.render("static/" + pageTemplate);
}
}

并像这样使用它:

// routes.js
var staticController = require("./static_page_controller");

app.get("/pageA.html", staticController("page_a"));

关于javascript - 如何在 Express.js 中定义各个页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24845221/

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