Javascript 用@import吞咽监视并编译更少的文件
我正试着让我的脑袋在咕噜咕噜地看着并编译一个.less项目+livereload。 我有一个使用Javascript 用@import吞咽监视并编译更少的文件,javascript,gulp,livereload,gulp-less,Javascript,Gulp,Livereload,Gulp Less,我正试着让我的脑袋在咕噜咕噜地看着并编译一个.less项目+livereload。 我有一个使用@import的style.less文件。 当我运行gulp任务时,它似乎不理解导入。修改主less文件时,gulp会编译该文件并刷新浏览器,但如果仅修改导入,则会忽略更改 这是我的gulpfile.js var gulp = require('gulp'); var less = require('gulp-less'); var watch = require('gulp-watch'); var
@import
的style.less文件。
当我运行gulp任务时,它似乎不理解导入。修改主less文件时,gulp会编译该文件并刷新浏览器,但如果仅修改导入,则会忽略更改
这是我的gulpfile.js
var gulp = require('gulp');
var less = require('gulp-less');
var watch = require('gulp-watch');
var prefix = require('gulp-autoprefixer');
var plumber = require('gulp-plumber');
var livereload = require('gulp-livereload');
var path = require('path');
gulp.task('default', function() {
return gulp.src('./style.less')
.pipe(watch())
.pipe(plumber())
.pipe(less({
paths: ['./', './overrides/']
}))
.pipe(prefix("last 8 version", "> 1%", "ie 8", "ie 7"), {cascade:true})
.pipe(gulp.dest('./'))
.pipe(livereload());
});
我尝试在gulp.src('./*.less')
中不指定主文件名,但是所有less文件都是单独编译的
谢谢现在,您正在打开单个
gulp.src
文件,并在使用gulp打开文件后观看。
下面将监视和src分为两个任务,允许单独的文件监视和src监视
var gulp = require('gulp');
var less = require('gulp-less');
var watch = require('gulp-watch');
var prefix = require('gulp-autoprefixer');
var plumber = require('gulp-plumber');
var livereload = require('gulp-livereload');
var path = require('path');
gulp.task('less', function() {
return gulp.src('./style.less') // only compile the entry file
.pipe(plumber())
.pipe(less({
paths: ['./', './overrides/']
}))
.pipe(prefix("last 8 version", "> 1%", "ie 8", "ie 7"), {cascade:true})
.pipe(gulp.dest('./'))
.pipe(livereload());
});
gulp.task('watch', function() {
gulp.watch('./*.less', ['less']); // Watch all the .less files, then run the less task
});
gulp.task('default', ['watch']); // Default will run the 'entry' watch task
当使用*.less
找到的任何文件被更改时,它将运行任务,该任务将只编译src文件。
如果不检查导入设置,@imports应该被正确地“包括”进去。您可以使用它。重复:尽管它使用了较旧的gulp.run()风格!谢谢你的任务分解:)我回来了。我正在处理的文件都在同一个文件夹中。我现在正在处理
/overrides/
文件夹中的文件。当我更改此文件夹中的文件时,gulp不再检测这些更改。它在根级别工作,但不适用于嵌套导入。这不是路径:['./','./overrides/']
假定的帮助吗?是否可以将特定的监视文件路径传递到“less”任务中,并根据传入路径选择“style.less”文件?此包已失效!