Sails.js + grunt不能编译资产
Sails.js + grunt doesn't compile assets
我对整个NodeJS风暴都很陌生,经过一些研究,我决定使用Sails.JS作为我的框架。
一切正常,直到我尝试使用Bootstrap Bootswatch .less文件。
如果我复制bootswatch。进入我的样式文件夹,刷新页面,我所有的资产抛出404错误。
目录树是这样的:
Root
|_api
|_assets
|_|_images
|_|_linker
|_|_|_fonts
|_|_|_js
|_|_|_styles
|_|_|_|_bootstrap.css
|_|_|_|_custom.less
|_|_|_|_variables.less
|_|_|_|_bootswatch.less
|_|_|_templates
|_configs
etc.
我的gruntfile.js看起来像这样:
var cssFilesToInject = [
'linker/styles/variables.less',
'linker/styles/bootstrap.css',
'linker/styles/bootswatch.less',
'linker/styles/custom.less',
'linker/**/*.css'
];
我尝试用sails lift --verbose
启动服务器,没有抛出错误。
遇到了同样的问题,但找到了更好的解决方案——尽管不是完美的。基本上,在项目根目录下运行grunt compileAssets
。如果那可行,我们就在正确的轨道上。
最好解决真正的问题,即扬帆在提升时不编译资产。
所以这是我的工作:
我翻遍了grunt文件,以便对发生的事情有一个有限的了解。由于手动编译资产是有效的,所以Grunt似乎运行正常。然后我偶然发现了一个.sailsrc
文件在我的项目根。下面是它的样子:
{
"generators": {
"modules": {}
},
"hooks": {
"grunt": false
}
}
看起来Grunt被关闭了。我把它改成这个,扬起船帆,它就工作了!
{
"generators": {
"modules": {}
},
"hooks": {
// "grunt": false
}
}
我还不知道这是做什么的,所以也许这是一个蹩脚的解决方案,但它让我回去工作。当我获得更多的航海经验时,如果这是不对的,我会正确地修复它。
框架的好选择!Sails非常棒,可以用Angular.js创建一个平均堆栈,无论如何,我所看到的Sails.js自动编译充其量是一件棘手的事情,因为这个问题有很多话题。
我也遇到了使它与SCSS文件一起工作的问题。
总的来说,我认为最好是你用任何终端手动编译文件,并将其链接到styles目录。
如果你设法找到另一种方法,那就太好了,然而,资产无法编译的原因可能是由于大量的因素,你将花费数小时试图整理
- 不能从angular2中的子组件指定父组件中的数组
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- 转义符不能与innerHTML一起使用
- JSON.parse没有'不能使用Javascript
- JS可以在Chrome中工作,但不能在Firefox中工作
- 砌体不能填补小缺口
- javascript扫雷器floodfill算法不能正常工作
- JavaScript指令不能像我想象的那样工作
- Javascript赢得'不能在IE上编译,但可以在Chrome上运行
- Ng-repeat在HTML中不能正常工作,在angular js中编译
- 为什么angular.js不能在添加动态元素时编译DOM ?
- 编译后的Javascript不能在生产模式下工作
- R.js不能正确编译模糊脚本
- Sails.js + grunt不能编译资产
- @Angular (angular 2) won'不能编译es5 - Set, Map等缺失
- 指令中的编译函数不能正确求值
- 当model '编译后不能覆盖' User '模型;& # 39;编译一次(或者我已经监督了一些东西)
- JMSTwigJsBundle不能编译
- TypeScript不能正确编译