Sass 如何用gulp中的postss编译scs?
我有两个遗留项目,它们共享许多共同的功能,所以我试图使它们干燥,并将代码移动到单独的包中 我为其中一个编写了一些scs(使用webpack),然后将该css包含在另一个中,并获得了Sass 如何用gulp中的postss编译scs?,sass,gulp,postcss,Sass,Gulp,Postcss,我有两个遗留项目,它们共享许多共同的功能,所以我试图使它们干燥,并将代码移动到单独的包中 我为其中一个编写了一些scs(使用webpack),然后将该css包含在另一个中,并获得了 [13:18:52] postcss-partial-import: /home/bunyk/../node_modules/FEGeneric/src/user/auth.scss:26:26: Unknown word 24 | background-color: #CC4815;
[13:18:52] postcss-partial-import: /home/bunyk/../node_modules/FEGeneric/src/user/auth.scss:26:26: Unknown word
24 | background-color: #CC4815;
25 | img {
> 26 | width: #{$panel-width / 2};
| ^
27 | display: block;
28 | height: 550px;
这是通过添加
import scss_syntax from 'postcss-scss';
进入我的吞咽任务,当前看起来如下:
gulp.task('styles:debug', cb =>
gulp.src('app/styles/application.scss')
.pipe(rename({extname: '.css'}))
.pipe(sourcemap.init())
.pipe(postcss([
require('postcss-partial-import')({extension: 'scss'}),
require('postcss-nested'),
require('postcss-sassy-mixins'),
require('postcss-inline-comment'),
require('postcss-simple-vars'),
require('postcss-conditionals'),
autoprefixer({browsers: ['last 2 versions']})
], {
syntax: scss_syntax // <--- this was added
}))
.on('error', e => {
gutil.log(e.message);
cb();
})
.pipe(sourcemap.write('.'))
.pipe(gulp.dest('dist/'))
);
gulp.task('styles:debug',cb=>
gulp.src('app/styles/application.scss')
.pipe(重命名({extname:'.css'}))
.pipe(sourcemap.init())
.管道(邮政编码)([
require('postsss-partial-import')({扩展名:'scss'}),
require('postss-nested'),
要求('postss-sassy-mixins'),
要求('postss-inline-comment'),
要求('postss-simple-vars'),
require('postss-conditionals'),
autoprefixer({浏览器:['last 2 versions']})
], {
语法:scss_语法//{
日志(e.message);
cb();
})
.pipe(sourcemap.write('.'))
.pipe(大口目的地('dist/'))
);
现在project已成功编译,但在浏览器中我看到原始SCS:
在postcss scss自述文件中,我看到粗体的语句“此模块不编译scss”,但现在我的问题是:“哪个模块编译?”有一个gulp任务,它将把你的SCS编译成CSS,然后你可以将它导入到post CSS。我经常用AutoRefixer来做这件事。有一个gulp任务,它将把你的SCS编译成CSS,然后你可以将它导入post CSS。我经常用AutoRefixer来做这件事。看起来我被gulp-SCS误导了模块,它要求安装SCS(为了简单起见,我希望所有的东西都由npm安装。无论如何,即使是gulp sass也没有帮助,因为不管在管道中的POSTSS之前或之后,它都会给我语法错误:(我个人不知道任务运行程序的sass模块不需要在其他地方安装sass。看起来你可以用npm安装,让gulp SCS工作,同时在npm中维护你的所有包管理。看起来我被gulp SCS模块误导了,它需要安装SCS(为了简单起见,我希望所有的东西都由npm安装。无论如何,即使是gulp sass也没有帮助,因为不管在管道中的POSTSS之前或之后,它都会给我语法错误。)(我个人不知道任务运行程序的sass模块不需要在其他地方安装sass。看起来您可以使用npm进行安装,并使gulp SCS工作,同时在npm中维护您的所有包管理。)。