如何解决EJS中的Header部分出现问题
新的节点/表达式,找不到类似于我所面临的SO答案。我有一个Express应用程序在所有页面上都使用partials/header
导航栏,但是遇到了一个问题,如果我转到/user/:username
这样的位置,将无法以正确的样式呈现标题。 / p>
这就是/{something}
的所有页面上的样子:
如果我转到/user/:username
或其他带有参数的网址,就会出现以下情况:
请注意减少的填充和导航链接更改。我正在使用Bootstrap样式中的ejs作为视图引擎,这是我的 app.js 设置视图引擎和视图路径:
app.use(express.static(path.join(__dirname,'public')));
app.set('views',path.join(__dirname,'views'));
app.set('view engine','ejs');
在所有其他页面上均可使用的标题导入:
<%- include('partials/header'); -%>
user.ejs的第二张屏幕截图:
app.get('/user/:username',(req,res) => res.render('user'));
如果我将其更改为/user
(完全删除参数),则会很好地显示导航栏,这使我困惑为什么请求参数会引起这样的冲突。我尝试将头文件从视图/部分移动到仅视图+更新include语句,但这没有任何改变。我还尝试了与用于开发(Firefox)的主浏览器不同的浏览器(Chrome),但也没有运气。
解决方法
发布后立即意识到了我的问题...而且也无法相信我因斜线丢失而损失了2个小时。
在我的partials/header
中,我仍然引用了自己的styles.css:
<link rel="stylesheet" href="styles.css">
何时需要:
<link rel="stylesheet" href="/styles.css">
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。