【发布时间】:2022-01-04 05:10:06
【问题描述】:
app.js
// Calling Routes
require("./routes")(app);
路由器文件夹 index.js
module.exports = function (app) {
app.use("/", require("./all_routes"));
}
all_routes.js
var express = require("express");
var router = express.Router();
router.get("/", function (req, res, next) {
res.render("home/index.html");
});
//About Page
router.get("/about", function (req, res, next) {
res.render("about/index.html");
});
//Contact
router.get("/contact", function (req, res, next) {
res.render("contact/index.html");
});
//product
router.get("/product", function (req, res, next) {
res.render("product/index.html");
});
//product list
router.get("/product/demo-product", function (req, res, next) {
res.render("demo-product/index.html");
});
router.get("/product/request-product", function (req, res, next) {
res.render("request-product/index.html");
});
//service
router.get("/service", function (req, res, next) {
res.render("product/index.html");
});
//service list
router.get("/service/what-we-do", function (req, res, next) {
res.render("what-we-do/index.html");
});
router.get("/service/how-we-do", function (req, res, next) {
res.render("how-we-do/index.html");
});
我正在尝试减少 all_routes.js 文件中的代码,但相同的代码会一次又一次地重复
我在网上搜索并尝试动态创建它但没有成功有什么办法可以减少代码行,因为我已经在上面给出了我的代码
【问题讨论】:
-
如果您实际上并没有使用模板功能并且只需要将适当的
index.html文件发送到浏览器,那么您似乎在 URL 和文件系统位置之间有足够的相关性,您可以使用只需几个express.static()路由,或者您可以编写一个稍微不同版本的express.static()来从文件系统中获取匹配的文件。
标签: javascript node.js express routes