我是整个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启动服务器,并且未引发任何错误。

最佳答案

遇到了同样的问题,但是发现了a better solution –尽管并不完美。基本上,您在项目根目录中运行grunt compileAssets。如果可行,那么我们走在正确的轨道上。

最好解决帆船在举升时没有编译资产这一实际问题。

所以这对我有用:

我翻阅了咕files的文件,以了解发生了什么。由于手动编译资产工作正常,因此Grunt似乎运行正常。然后我偶然发现了项目根目录中的.sailsrc文件。看起来是这样的:

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


看来Grunt已关闭。我把它改成了这个,扬帆起航了!

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


我真的还不知道这是做什么的,所以也许这是一个过时的解决方案,但是它让我恢复了工作。当我获得有关Sails的更多经验时,如果这不正确,我会进行适当修复。

08-03 13:30
查看更多