嘿伙计们,我有一个非常奇怪的问题,那就是当我走路线时 http://localhost:5000/posts/edit/ <%=idofblog%> 所有 CSS 样式和 Js 代码都没有加载,我的网页看起来非常难看我不知道发生了什么,所有其他路由都工作正常。
所有的CSS和Js文件夹都在public文件夹里面
app.use(express.static(path.join(__dirname,'public')));
这是我的整个文件结构 enter image description here
在 _layout 文件夹中,我有一个 header.ejs 文件,其中包含指向 css 的所有链接,如下所示:- <link rel="stylesheet" type="text/css" href="../css/register.css">
每条路线都运行良好,但只要我去这条路线http://localhost:5000/posts/edit/ <%=idofblog%> 所有 CSS 和 JS 代码都消失了,图像也是如此。 在 posts.js 路线里面我有这个
router.get('/edit/:id',(req,res)=>{
res.render('edit');
}); 而ejs文件中的href链接就是这个
<a href="edit/<%=post._id%>" class="btn btn-info btn-rounded">Edit</a>
页面已加载,输入字段、文本区域等所有内容都在那里,但没有样式,我不知道我做错了什么。
最佳答案
我不确定,但据我所知,您的问题可能是您使用相对路径加载样式和脚本。你应该使用绝对路径,例如加载 css 你需要这样做(确保根据你的元素结构使用路径):
<link rel="stylesheet" type="text/css" href="public/css/register.css">
关于javascript - Node.js 所有 CSS 和 JS 链接在特定路径处消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50549604/