我正在使用gulp-sass为我的项目编译SCSS。然后我决定切换到.sass以简化它。我切换到gulp-ruby-sass,但导入不起作用。这就是我所拥有的:
@import bootstrap/mixins
我的目录结构:
|-- app
| |-- app.js
| |-- app.scss
| |-- app_controller.js
| |-- app_controller_test.js
| |-- bootstrap
| | |-- _mixins.scss
| | |-- _normalize.scss
| | |-- _variables.scss
在我的gulpfile中:
gulp.task('css', function(){
gulp.src(['app.scss','./app/**/*.sass'])
.pipe(plugins.rubySass())
.pipe(plugins.concat('app.css'))
.pipe(gulp.dest('./build'));
});
然后我收到了这个错误:
error ./main/main.sass (Line 1: File to import not found or unreadable: bootstrap/mixins.
Load paths:
/private/var/folders/kn/29d686ds16s31t8mp0957dt40000gn/T/gulp-ruby-sass
请帮我解决这个问题。谢谢!
答案 0 :(得分:0)
应该是gulp.src(['app.scss','./app/**/*.scss'])
而不是gulp.src(['app.scss','./app/**/*.sass'])
吗?
答案 1 :(得分:0)
您需要定义加载路径:
gulp.task('css', function() {
return gulp.src(['app.scss','./app/**/*.sass'])
.pipe(plugins.rubySass({
loadPath: [
process.cwd() + '/app'
]
}))
.pipe(plugins.concat('app.css'))
.pipe(gulp.dest('./build'));
});
您可以通过逗号分隔添加多个加载路径。函数process.cwd()
用于获取gulpfile.js