提问人:linttivaa 提问时间:11/17/2023 更新时间:11/17/2023 访问量:35
EJS 未加载 CSS 文件
ejs is not loading css file
问:
正如标题所说,我的 layout.ejs 文件没有加载 style.css 文件。我现在已经注定了几个小时,却没有找到答案。我尝试了很多东西,检查了 100 次所有的拼写。检查网络选项卡时,css 文件的路径似乎是正确的,但它给出了 404 错误。这些文件位于 root/public/style/style.css 和 root/views/layout.ejs 中
布局.ejs
<link rel="stylesheet" href="/style/style.css">
main.js
"use strict";
const express = require("express"),
app = express(),
router = express.Router(),
mongoose = require("mongoose"),
layouts = require("express-ejs-layouts"),
errorController = require("./controllers/errorController"),
homeController = require("./controllers/homeController"),
path = require('path');
//setting the port and the view engine as .ejs files
app.set("port", process.env.PORT || 3001);
app.set("view engine", "ejs");
router.use(express.static(path.join(__dirname, "public")));
router.use(layouts);
router.use(
express.urlencoded({
extended: false
})
);
router.use(express.json());
// using the homecontroller
router.use(homeController.logRequestPaths);
app.get("/", homeController.index);
// Using the error controller
app.use(errorController.ResourceNotFound404);
app.use(errorController.internalError500);
app.use("/", router);
app.listen(app.get("port"), () => {
console.log(`Server running at http://localhost:${app.get("port")}`)
});
发送帮助!
尝试了layout.ejs文件中不同版本的路径和不同的代码片段,以在express中需要静态文件。
答:
0赞
jQueeny
11/17/2023
#1
你能改变吗:
router.use(express.static(path.join(__dirname, "public")));
自
app.use(express.static(path.join(__dirname, "/public")));
评论
0赞
linttivaa
11/20/2023
感谢您的回复,但我也尝试过。
评论