我有一个项目,我将LESS用作CSS预处理器,Gulp作为我的编译工具。我有一个文件夹结构如下:编辑LESS部分时,Chrome不能实时重新加载
- 样式
- >少
- >>谐音
- >>> _ colours.less
- >> index.less
我index.less
文件是这样的:
@import "partials/_colours";
.red { color: @colour; font-size: 12em; }
我_colours.less
文件看起来像这样:
@colour: red;
而且我gulpfile.js
看起来像这样(简化,去除错误处理)
var lessFiles = ['stylesheets/less/**/*.less', '!stylesheets/less/partials/*.less'];
gulp.task('less:compile', function() {
return gulp.src(lessFiles)
.pipe(sourcemaps.init())
.pipe(less())
.pipe(sourcemaps.write("maps", {includeContent: false, sourceRoot: '../less'}))
.pipe(gulp.dest('stylesheets'));
});
gulp.task('less:watch', ['less:compile'], function() {
return gulp.watch(lessFiles[0], ['less:compile']);
});
当我运行gulp less:watch
一切compilles,我得到一个index.css
文件(与源地图)在我的样式表目录中,我可以带到Chrome并进行实时编辑。
如果我在Chrome编辑器中编辑index.less
文件并保存,我会立即重新加载。但是,如果我更改_colours.less
中@color
变量的值,则在重新加载窗口之前,我看不到更改。
这是一个错误还是我做错了什么?
我使用Chrome 43
不是一个错误,这是表明行为。 Chrome不会自动重新加载样式表,并且不会检测文件更改。 –
当你说“Chrome不会自动重新加载样式表并且不会检测文件更改”时,你说的是_colours.less文件,对吧? – kshep92
是的,铬无法知道文件已更改。 –