节点.js快递无法理解 CSS 文件的路径



我正试图在express的帮助下使用node.js在html页面上加载一些信息。

问题是,当我想打开主页(它显示数据库中的所有书籍(时,一切都很好——css和js文件被找到并应用到页面上。但当我加载另一个页面(它显示一本书(时,唯一的页面被加载(我的意思是没有任何css(。此外,这两页在同一个文件夹中。

我已经包含了这样样式的文件夹(在server.js文件中(:

app.use(express.static(path.join(__dirname, '/style')));

这段代码运行良好:

app.get("/", function(req, res){
pool.query("SELECT * FROM books", function(err, rows) {
if(err) return console.log(err);
res.render("../front/index.hbs", {
books: rows
});
});
});

但是当我尝试加载这篇文章时-没有应用css:

app.get("/single-product/:id/", function(req, res){
const id = req.params.id;
pool.query("SELECT * FROM books WHERE idBook=?", [id], function(err, rows) {
if(err) return console.log(err);
res.render("../front/single-product.hbs", {
books: rows[0]
});
});
});  

两个文件中包含的css如下:

<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/plugins.css">
<link rel="stylesheet" href="css/style.css">
<!-- Cusom css -->
<link rel="stylesheet" href="css/custom.css">

当我打开devtools时,第一种方式显示200响应代码,第二种方式显示404。可能出了什么问题?

如果将这些css文件与api路由分开,则需要在html路由中提供这些css文件,或者如果将它们放在一起,则只需将它们添加到常规服务器中。

修改:将"server"添加到app.use(express.static(path.join(__dirname,'server','/style'((;

最新更新