SASS错误导致的奇怪的吞咽崩溃
Strange gulp crashes caused by SASS errors
im目前正在构建一个项目,并使用Gulp作为任务运行程序,并使用Gulp-sass作为sass编译引擎。问题是,每当我在main.scss文件中犯错误时,在文件末尾的另一行描述的片段(下面的代码)中,一切都很顺利,按照预期吞下handeles-sass错误,并继续运行。(以下示例)
[18:14:28] Starting 'sass'...
[18:14:28] Finished 'sass' after 3.25 ms
Error in plugin 'sass'
Message:
src'sass'main.scss
Error: Invalid CSS after " margin": expected "}", was ": 0;"
on line 37 of stdin
>> margin: 0;
----^
但是,当它是第65行的分号时,整个事情就停止了工作,没有任何日志,并且拒绝tu lauch,除非我修复它。(示例)
[18:19:23] Starting 'sass'...
[18:19:23] Finished 'sass' after 3.18 ms
C:'test
你知道是什么导致了这个错误吗?我知道最明显的解决方案是"不要在sass中犯错误",但我仍然想解决它
节点版本5.9.1.
操作系统-Windows 10。
https://bitbucket.org/gentos/strangegulpbehaviour如果需要重现错误,我还将一个麻烦的sass和gullfile文件放入了一个迷你项目中
提前感谢您的时间和帮助!
这段代码放在我的任何一个主要gull文件的末尾,导致了一种描述的行为。由于不敬而删除了其余部分。
nav{
position: fixed
ul{
li{
}
}
}
gullfile.js
var gulp = require('gulp'),
sass = require('gulp-sass'),
watch = require('gulp-watch'),
cleanCSS = require('gulp-clean-css');
browserSync = require("browser-sync"),
gutil = require('gulp-util'),
reload = browserSync.reload;
var path = {
build: {
html: 'build/',
js: 'build/js/',
css: 'build/css/',
image: 'build/img/'
},
src: {
html: 'src/*.html',
js: 'src/js/**/*.js',
sass: 'src/sass/**/*.scss',
css: 'src/css/**/*.css',
image: 'src/img/*'
},
watch: {
html: 'src/**/*.html',
js: 'src/js/**/*.js',
sass: 'src/sass/*',
css: 'src/css/**/*.css',
image: 'src/img/*'
},
clean: './build'
};
function handleErrors() {
var gutil = require('gulp-util');
var args = Array.prototype.slice.call(arguments);
gutil.log(gutil.colors.white.bgRed.underline.bold('Gulp error:'));
gutil.log(gutil.colors.red(args));
this.emit('end');
}
gulp.task('html',function(){
gulp.src(path.src.html)
.pipe(gulp.dest(path.build.html))
.pipe(reload({stream: true}));
});
gulp.task('browser-sync', function() {
browserSync.init({
server: {
baseDir: [path.build.html]
}
});
});
gulp.task('sass',function(){
gulp.src('./src/sass/main.scss')
.pipe(sass({includePaths: ['./src/sass']}).on('error', sass.logError))
.pipe(sass().on('error', sass.logError))
.pipe(cleanCSS({debug: true}, function(details) {
console.log(details.name + ': ' + details.stats.originalSize);
console.log(details.name + ': ' + details.stats.minifiedSize);
}))
.pipe(gulp.dest(path.build.css))
.pipe(reload({stream: true}));
});
gulp.task('watch', function(){
watch([path.watch.sass], function(event, cb) {
gulp.start('sass');
});
});
gulp.task('default', ["sass", "html", "browser-sync" ,"watch"]);
运行此命令并重置universe
npm install gulp-sass
或跟踪错误
sass --trace --watch input.scss:output.css
相关文章:
- 无法安装节点sass相关性
- location.reload(true)崩溃浏览器选项卡
- 引导程序崩溃一次只能看到一个
- Grunt构建导致Angular应用程序在dist上崩溃
- jquery扩展了崩溃效率
- 为什么这个For循环会使浏览器实验室崩溃
- 在ES6中加载SASS变量
- 引导崩溃具有快照抖动
- 引导程序导航栏崩溃问题
- jQuery Mobile点击数据崩溃
- 脸书's的inApp浏览器在尝试上传表单中的照片时崩溃
- 同一事物的两个函数,一个崩溃,另一个不崩溃,为什么
- twitter引导崩溃在第一次点击后停止工作
- ImageMapster可以动态显示和隐藏图像选择崩溃
- Javascript-食物总数数组崩溃
- 报价左轮手枪崩溃网站
- Bootstrap Accordion崩溃中的问题
- jquery导致dygraph崩溃
- 为什么这会造成一个无休止的循环并使我的浏览器崩溃
- SASS错误导致的奇怪的吞咽崩溃