Gulp sass报错File to import not found or unreadable: common

2019-04-28141次阅读gulp

Gulp sass报错File to import not found or unreadable(未找到或无法读取要导入的文件): common问题描述:

@import "common";

@import一个文件时,当你在修改这个引入文件时,时不时就会报这样的错,同时关闭进程。

events.js:183
      throw er; // Unhandled 'error' event
      ^
Error: src\sass\index.scss
Error: File to import not found or unreadable: common.
        on line 1 of src/sass/index.scss
>> @import "common";

发现问题就要解决问题,百度、Google了一下,最终还是Google靠谱点找到了这里

原文分析:似乎是因为保存文件时的竞争条件有关系,特别是libsass太快了。也有人在Sublime Text中启用一个名为atomic_save的选项。设置"atomic_save": true解决了。可我用的VSCode编辑器。。。最终只需在尝试编译SCSS之前,让Gulp暂停几毫秒这个方案解救了我。

安装gulp-wait 

npm install gulp-wait --save-dev

添加.pipe($.wait(200))到sass任务中即可:

// 编译Sass
gulp.task('sass',()=>{
		return gulp.src('src/sass/!(common|reset|define).scss')
		.pipe($.wait(200))
        .pipe($.sass())
        .pipe($.autoprefixer())
		.pipe( $.if(process.env.production !== undefined, $.cleanCss()) )
        .pipe(gulp.dest('build/css'))
        .pipe($.connect.reload());
});

关于Gulp的坑。。。作者遇到的还有这些

上一篇: 被忽略的逗号操作符  下一篇: TypeScript全局模块及文件模块中的ES模块语法  

Gulp sass报错File to import not found or unreadable: common相关文章