无论如何使用Sass的@import命令导入常规CSS文件?虽然我没有使用sass的所有SCSS语法,但我仍然喜欢它的组合/压缩功能,并且希望能够在不将我的所有文件重命名为*.scss的情况下使用它.
目前在我们的Sass文件中,我们有类似以下内容:
@import "../../node_modules/some-module/sass/app";
Run Code Online (Sandbox Code Playgroud)
这很糟糕,因为我们实际上并不确定路径:它可能是../node_modules,它可能是../../../../../node_modules,因为npm如何安装东西.
在Sass中我们可以搜索到找到node_modules吗?甚至是通过npm包括Sass的正确方法?
我试图在我的项目中开始使用Bourbon和Neat Sass库.我想用Gulp编译Sass.这是一个简单的styles任务设置,我在其中一个教程中找到了:
var gulp = require('gulp'),
sass = require('gulp-sass'),
neat = require('node-neat').includePaths;
var paths = {
scss: './assets/styles/*.scss'
};
gulp.task('styles', function () {
return gulp.src(paths.scss)
.pipe(sass({
includePaths: ['styles'].concat(neat)
}))
.pipe(gulp.dest('./dist/styles'));
});
gulp.task('default', function () {
gulp.start('styles');
});
Run Code Online (Sandbox Code Playgroud)
然后在主.scss文件中我放置导入:
@import "bourbon";
@import "base/base";
@import "neat";
Run Code Online (Sandbox Code Playgroud)
此任务正确执行.
让我困惑的是究竟是什么includePaths?基于上面的例子,有人可以向我解释一下includePath角色是什么吗?