在 harpJS 中,假设我有一个这样的文件夹结构:
mysite/
- _layout.ejs
- index.ejs
+ styles/
- main.css
+ folder-level-1/
- page-level-1.ejs
+ folder-level-2/
- page-level-2.ejs
在_layout.ejs
我有一个 CSS 路径参考:
<!-- In _layout.ejs -->
<link href="styles/main.css" rel="stylesheet">
它在 中可以正常工作index.ejs
,但是路径会在page-level-1.ejs
和中中断page-level-2.ejs
,因为它不是相对的。
我目前的解决方案(我不太满意)是顶部的一个小脚本_layout.ejs
:
<!-- In _layout.ejs -->
<% var pathPrefix = "";
for (var i = 0; i < current.path.length; i++) {
pathPrefix += "../";
};
%>
然后我可以将 CSS 路径写为:
<!-- In _layout.ejs -->
<link href="<%- pathPrefix %>styles/main.css" rel="stylesheet">
我觉得这个解决方案有点hacky。有没有更好的办法?