我有吞咽的问题。我正在使用gulp-watch和gulp-ruby-sass来编译scss文件,当某些东西发生变化时,问题是,我只更改了一个文件并编译了文件夹中的所有文件,而我只想编译更改后的文件。我试着使用plugin changed插件,但得到了同样的结果。
发布于 2015-01-13 01:26:55
假设您将一个scss文件编译为另一个css文件(例如,将header.scss编译为header.css),则可以使用gulp-newer仅编译更改后的文件:
发布于 2015-12-22 09:52:58
你可以使用gulp changed
这是我的示例http://lizhug.com/tech/gulp-changed-gulp-sass-only-compile-files-that-changed/
uglifycss = require "gulp-uglifycss"
watch = require "gulp-watch"
changed = require "gulp-changed"
##编译scss文件
gulp.task 'sass', ->
gulp.src "src/scss/**/*.scss"
.pipe(changed("assets/css", {extension: ".min.css"})) //this is right {".css"} is wrong because i use rename ".min"
.pipe(sass())
.on "error", logError
.pipe autoprefixer
browsers: ['last 3 versions'],
cascade: true, #是否美化属性值 默认:true 像这样:
remove:true #是否去掉不必要的前缀 默认:true
.pipe uglifycss()
.pipe rename suffix: '.min'
.pipe gulp.dest 'assets/css'
.pipe livereload()
#编译coffee文件
gulp.task "coffee", ->
gulp.src "src/js/**/*.coffee", read:false
.pipe(changed("assets/js", {extension: ".min.js"}))
.pipe browserify
debug: true
transform: ['coffeeify']
extensions: ['.coffee']
.on "error", logError
.pipe uglify()
.pipe rename suffix: ".min"
.pipe extReplace '.js'
.pipe gulp.dest "assets/js"
.pipe livereload()
#编译coffee文件
gulp.task "coffee", ->
gulp.src "src/js/**/*.coffee", read:false
.pipe(changed("assets/js", {extension: ".js"}))
.pipe browserify
debug: true
transform: ['coffeeify']
extensions: ['.coffee']
.on "error", logError
.pipe uglify()
.pipe extReplace '.js'
.pipe gulp.dest "assets/js"
.pipe livereload()
https://stackoverflow.com/questions/27905849
复制相似问题