大神们,帮我看看为什么sass文件修改2次之后,页面才会更新前一次的修改,就是修改不同步,我的copy任务配置有什么问题吗?
var gulp = require('gulp');
var sass = require('gulp-sass');
var autoprefixer = require('gulp-autoprefixer');
var sourcemaps = require('gulp-sourcemaps');
var inject = require('gulp-inject');
var concat = require('gulp-concat');
var jshint = require('gulp-jshint');
var uglify = require('gulp-uglify');
var htmlhint = require('gulp-htmlhint');
var livereload = require('gulp-livereload');
var webserver = require('gulp-webserver');
var src = {
scss: './app/sass/**/*.scss',
css: './app/css/**/*.css',
cssDir: './app/css',
js: './app/js/**/*.js',
html: './app/index.html'
}
var dest = {
css: './dist/css',
cssFiles: './dist/css/**/*.css',
js: './dist/js'
}
gulp.task('sass', function(){
return gulp.src(src.scss)
.pipe(sourcemaps.init())
.pipe(sass())
.pipe(autoprefixer())
.pipe(sourcemaps.write())
.pipe(gulp.dest(dest.css))
.pipe(livereload());
});
gulp.task('copy', function(){
gulp.src(dest.cssFiles)
.pipe(gulp.dest(src.cssDir));
});
gulp.task('inject', function(){
var target = gulp.src(src.html);
var sources = gulp.src([src.js, src.css], {read: false},{relative: true});
return target.pipe(inject(sources))
.pipe(gulp.dest('./app'));
});
gulp.task('concat', function(){
return gulp.src(src.js)
.pipe(concat('all.js'))
.pipe(gulp.dest(dest.js));
});
gulp.task('jshint', function(){
return gulp.src(src.js)
.pipe(jshint())
.pipe(jshint('./.jshintrc'))
.pipe(jshint.reporter('default'))
.pipe(livereload());
});
gulp.task('uglify', function(){
return gulp.src(src.js)
.pipe(uglify())
.pipe(gulp.dest(dest.js));
});
gulp.task('htmlhint', function(){
return gulp.src(src.html)
.pipe(htmlhint())
.pipe(htmlhint.reporter())
.pipe(livereload());
});
gulp.task('server', function(){
gulp.src(['./app','./dist'])
.pipe(webserver({
livereload: true,
open: true
}))
});
gulp.task('watch',['server','sass','copy','jshint','uglify','htmlhint','concat'], function(){
livereload.listen({basepath: 'app'});
gulp.watch(src.scss, ['sass','copy']).on('change', livereload);
gulp.watch(src.js, ['jshint']).on('change', livereload);
gulp.watch(src.html, ['htmlhint']).on('change', livereload);
gulp.watch(src.js,['uglify','concat']);
});
copy
里没写return
,应该加上: