gulp-sass 不会导入 bootstrap 安装了 Bower
gulp-sass wont import bootstrap installed with bower
我想遍历我所有的 bower 包。所有将 sass 文件作为其主要文件的人,我想将 gulp-sass.
包含在 includePaths
中
我正在使用 npm 包 main-bower-files
成功获取主要文件(我过滤到仅 scss 文件)。
但是当我去编译时,我得到以下错误(因为现在 bootstrap 是我唯一的):
stream.js:94
throw er; // Unhandled stream error in pipe.
^
Error: file to import not found or unreadable: bootstrap
我的 gulp 文件的相关部分是
var load_paths = bower({
base: path.join(__dirname, "bower_components"),
filter: '**/_*.scss'
});
gulp.src(app_css_file)
.pipe(sass({
includePaths: load_paths
}))
.pipe(concat('app.css'))
.pipe(gulp.dest('build/css'));
我的问题原来是 main-bower-files
给你 文件 ,而不是 目录 。呃。 Node-sass 需要包含可导入文件的目录。
所以我得稍微修改一下我的load_paths
。
for (var i=0; i<load_paths.length; i++){
// we need to use the parent directories of the main files, not the files themselves
// so ./bower_components/bootstrap-sass-official/assets/stylesheets/_bootstrap.scss
// becomes ./bower_components/bootstrap-sass-official/assets/stylesheets
load_paths[i] = path.dirname(load_paths[i]);
}
然后就解决了。希望这对其他人有帮助:)
我想遍历我所有的 bower 包。所有将 sass 文件作为其主要文件的人,我想将 gulp-sass.
包含在includePaths
中
我正在使用 npm 包 main-bower-files
成功获取主要文件(我过滤到仅 scss 文件)。
但是当我去编译时,我得到以下错误(因为现在 bootstrap 是我唯一的):
stream.js:94
throw er; // Unhandled stream error in pipe.
^
Error: file to import not found or unreadable: bootstrap
我的 gulp 文件的相关部分是
var load_paths = bower({
base: path.join(__dirname, "bower_components"),
filter: '**/_*.scss'
});
gulp.src(app_css_file)
.pipe(sass({
includePaths: load_paths
}))
.pipe(concat('app.css'))
.pipe(gulp.dest('build/css'));
我的问题原来是 main-bower-files
给你 文件 ,而不是 目录 。呃。 Node-sass 需要包含可导入文件的目录。
所以我得稍微修改一下我的load_paths
。
for (var i=0; i<load_paths.length; i++){
// we need to use the parent directories of the main files, not the files themselves
// so ./bower_components/bootstrap-sass-official/assets/stylesheets/_bootstrap.scss
// becomes ./bower_components/bootstrap-sass-official/assets/stylesheets
load_paths[i] = path.dirname(load_paths[i]);
}
然后就解决了。希望这对其他人有帮助:)