我正在使用Sailsjs v0.12.4 使用NodeJS v6.4.0
我正在尝试将styles (css/js)
应用于我的所有观看(folders)
。
无论我路由'/'到,它都会呈现样式(bootstrap, font-awesome)
,但其他routes/pages
不会呈现它们。
layout.ejs
<!--STYLES-->
<link rel="stylesheet" href="styles/bootstrap.css">
<link rel="stylesheet" href="styles/custom.css">
<link rel="stylesheet" href="styles/importer.css">
<!--STYLES END-->
有没有人知道导入样式表和脚本最佳实践的好教程?似乎每隔一段时间我就会陷入导入库的困境,而且它会变得麻烦。
http://sailsjs.org/documentation/anatomy/my-app/views/layout-ejs
答案 0 :(得分:0)
请告诉我文件夹结构以及您编写此代码的位置?您需要将其添加到母版页。
请检查控制台错误。是否有类似404找不到的错误?或任何其他警告。与我们分享,以便我们帮助解决这个问题。
答案 1 :(得分:0)
如果您在资源文件夹中有css文件夹,那么如果您将页面更改为example.com/another-page,那么sails会尝试访问example.com/another-page/styles/bootstrap.css中的css文件在example.com/styles/bootstrap.css
中在您的布局中添加../到您的CSS链接。像这样:
<link rel="stylesheet" href="../styles/importer.css">
答案 2 :(得分:0)
Sails使用views文件夹中的默认layout.ejs
来呈现其页面。
sails在每次运行时自动将资产文件夹中的js, css
个文件加载到layout.ejs
。它寻找占位符
<!--STYLES-->
<!--STYLES END-->
表示css和
<!--SCRIPTS-->
<!--SCRIPTS END-->
for javascript。
说,您在routes.js
'get /foo' : 'FooController.bar'
并在FooController.js
中,您有一个动作bar
bar : function (req, res) {
return res.view();
}
在views
文件夹中,您应该在foo/bar.ejs
res.view()
呈现默认layout.ejs
并将<-% body %>
替换为bar.ejs
文件的内容。