gulp postcss-simple-vars throws error at // comments
我正在尝试从Sass迁移到postCSS,并测试出postcss-simple-vars gulp插件。
我正在使用Webstorm IDE,它会自动在.scss文件中使用javascript样式注释(//),所以我的非阻塞注释都是//注释,而不是/ * * /。
postcss-simple-vars会在所有//注释上引发错误,即使将silent选项设置为true。
这是我的大任务:
1 2 3 4 5 6 7 8 9 10 11 12 13 | gulp.task('postcss', function () { return gulp .src('./styles/sass2/*.scss') .pipe($.postcss( [ vars({ silent: true, variables: colors }) ])) .pipe(gulp.dest('./dest')); }); |
我真的缺少明显的东西吗?有什么方法可以使postcss-simple-vars忽略//样式注释?
我如何解决它:
我用gulp-replace($ .replace)将所有// //注释替换为/ * * /注释。
1 2 3 4 5 6 7 8 9 10 | gulp.task('replace-comments', function() { return gulp .src(config.scss) .pipe($.replace(/\\/\\/.*/g, function(comment){ return '/*' + comment.substring(2) + ( '*/'); })) .pipe(gulp.dest('./styles/sass3')); }); |
问题不在postcss-simple-vars中。这是postcss的默认解析器期望使用标准CSS,而
要通过postcss运行带有