Import SASS-避免在片段中重复导入mixin
抱歉,如果已经有人问过这个问题,但是我在任何地方都找不到 我正在努力使我的SASS文件井然有序,因此我使用了大量的片段来分离关注点<代码>\u mixins.scss<代码>\u页眉.scss,Import SASS-避免在片段中重复导入mixin,import,sass,mixins,partial,Import,Sass,Mixins,Partial,抱歉,如果已经有人问过这个问题,但是我在任何地方都找不到 我正在努力使我的SASS文件井然有序,因此我使用了大量的片段来分离关注点\u mixins.scss\u页眉.scss,\u页脚.scss,\u侧边栏,等等 然后我有了styles.scss文件,它看起来有点像: @import 'mixins' @import 'header' @import 'footer' @import 'sidebar' 我面临的问题是,如果我的\u mixins.scss部分中有一个mixin,比如说,@f
\u页脚.scss
,\u侧边栏
,等等
然后我有了styles.scss
文件,它看起来有点像:
@import 'mixins'
@import 'header'
@import 'footer'
@import 'sidebar'
我面临的问题是,如果我的\u mixins.scss
部分中有一个mixin,比如说,@function size(){}
,并且我想在\u header.scss
中使用它,我无法(libsass抛出一个错误-错误:没有指定大小的mixin
)
在我看来,它应该简单地将每个部分导入style.scss
,当它在调用@include size()
函数之前获得mixin部分时,它应该知道该做什么。但情况显然不是这样
所以
有没有办法保存一个@import'mixins'
放在我的每个其他部分的顶部
由于我使用多个库,如果我需要在每个库中维护十几个左右的“内容样式”部分,这可能会很快变得混乱
哦,如果有帮助的话,我会用gulp来建造它。。。相关任务是:
gulp.task('sass', function() {
var plugins = [
autoprefixer({
browsers: ['> 0%']
})
];
return gulp.src('./sass/**/*.scss')
.pipe(sourcemaps.init())
.pipe(sass({
includePaths: sassPaths,
}).on('error', sass.logError))
.pipe(postcss(plugins))
.pipe(csso())
.pipe(sourcemaps.write())
.pipe(gulp.dest('./css'))
.pipe(browserSync.stream());
});
是的。。。在我的现实世界中,我忽略了“内容样式”文件名之前的
\
,即\\u header.scss
。。。我觉得自己像个笨蛋
好吧,至少我知道了分部的实际作用
感谢所有回答这个问题的人。:) 这种情况“错误:没有mixin命名大小”
似乎与作用域问题有关
显然,当您@包含其源不在实际文件范围内的mixin时,Sass将抛出该错误(或类似“undefined mixin”
)
我建议您将mixin写入一个部分文件\u mixins.scss
,然后只需将其导入顶部的style.scss
**使用Dart Sass进行测试
希望这有帮助