我正在使用ember-cli v0.0.23,并试图让broccoli-compass包使用我的项目,我遇到了一些问题。
首先,在我的Brocfile
中,我已经取代了标准的Ember-CLI“蓝图”版本:
var styles = preprocessCss(appAndDependencies, prefix + '/styles', '/assets');
以下内容:
var compileCompass = require('broccoli-compass');
var styles = compileCompass(appAndDependencies, 'app/styles/app.scss', {
outputStyle: 'expanded',
sassDir: 'app/styles',
imagesDir: 'public/images/'
});
但是,当我运行ember build
时,我收到以下输出:
$ ember build
[broccoli-compass] Error: Command failed: Errno::ENOENT on line ["155"] of /Library/Ruby/Gems/2.0.0/gems/compass-0.12.6/lib/compass/compiler.rb: No such file or directory - /Users/gaker/Sites/project/tmp/tree_merger-tmp_dest_dir-GrWa8Zva.tmp/app/styles/app.scss
Run with --trace to see the full backtrace. The command-line arguments was: `compass compile app/styles/app.scss --relative-assets --sass-dir app/styles --output-style expanded --images-dir public/images/ --css-dir "../compass_compiler-tmp_dest_dir-eFsq51BG.tmp"`
如果我尝试运行终端中错误输出的compass
命令,它会创建该文件,只是它从我的项目根目录中找到一个目录(注意--css-dir
输出)。
在调用sassDir
时,我尝试了许多选项imagesDir
,compileCompass
等的组合,这是我得到的最接近的。
所以我能做些什么来成功获得指南针,西兰花指南针和ember-cli能够很好地发挥作用?
提前致谢
答案 0 :(得分:3)
您可以使用ember-cli-compass-compiler插件在ember-cli应用程序中编译指南针。
在您的ember-cli应用中执行以下操作:
npm install --save-dev ember-cli-compass-compiler
这就是你需要做的一切,从现在开始一切正常。它会将appname.scss
文件在appname.css
或ember build
命令上编译为ember serve
。
答案 1 :(得分:2)
试试这个(添加前缀和cssDir):
var compileCompass = require('broccoli-compass');
var styles = compileCompass(appAndDependencies, prefix + '/styles/app.scss', {
outputStyle: 'expanded',
sassDir: prefix + '/styles',
imagesDir: 'public/images/',
cssDir: '/assets'
});
斯特芬