Sails.js + grunt不会编译资产

我对整个NodeJS风暴都很陌生,经过一番研究,我决定使用Sails.JS作为我的框架。

这一切工作正常,直到我尝试使用Bootstrap Bootswatch .less文件。

如果我将bootswatch.less复制到我的样式文件夹中,并刷新页面,则我的所有资产都会引发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和,没有错误被抛出。

有同样的问题,但find了一个更好的解决scheme -尽pipe,并不完美。 基本上,你在你的项目根目录下运行grunt compileAssets 。 如果这样做的话,我们是在正确的轨道上。

解决风帆升降时不会编译资产的实际问题会更好。

所以这是对我有用的:

我通过咕噜声文件挖掘,以了解发生的事情。 由于编译资产手动工作,似乎Grunt运作正常。 然后我偶然发现了我的项目根目录下的一个.sailsrc文件。 以下是它的样子:

 { "generators": { "modules": {} }, "hooks": { "grunt": false } } 

它看起来像Grunt被closures。 我改变了这一点,举起帆,它的工作!

 { "generators": { "modules": {} }, "hooks": { // "grunt": false } } 

我真的不知道这是怎么回事,所以也许这是一个很好的解决scheme,但是让我重新开始工作。 当我获得更多Sails的经验时,如果这不正确,我会妥善解决。

有框架的好select! Sails很棒,可以用Angular.js创build一个平均值栈,无论如何,我所看到的Sails.js自动编译的所有内容至多是一个粘性的业务,因为这个问题有很多话题。

我也遇到了与SCSS文件一起工作的问题。

总的来说,我认为最好的方式是用任何你使用的terminal手动编译这些文件,并把它链接到styles目录。

如果您设法find另一种方法,那么资产不会编译的原因可能是由于大量的因素,您将花费数小时的时间来解决问题。