【问题标题】:Gulp Watch not working for new ubuntu setupGulp Watch 不适用于新的 ubuntu 设置
【发布时间】:2019-11-27 19:28:09
【问题描述】:

我安装了一个新的 ubuntu 18.04 机器并尝试将 gulp 用于一个新项目,但我遇到了 gulp.watch() 不关注更改的问题。

gulpfile.js:

var gulp = require('gulp');
var sass = require('gulp-sass');
sass.compiler = require('node-sass');

gulp.task('sass', function () {
  return gulp.src('./css/*.sass')
    .pipe(sass().on('error', sass.logError))
    .pipe(concat('main.css'))
    .pipe(gulp.dest('./css/compiled'))
    .pipe(browserSync.reload({stream:true}));
});
gulp.task('watch',function(){
    gulp.watch('./css/*.sass', gulp.series('sass'));
    gulp.watch('./css/*.sass',browserSync.reload);
})
gulp.task('watchAll', gulp.series('watch'));

文件夹结构:

-css
   -compiled
       main.css
   all-pages.sass
-images
index.html
gulpfile.js
package.json
package-lock.json
$ node -v
v13.2.0

$ npm -v
6.13.1

$ gulp -v
CLI version: 2.2.0
Local version: 4.0.2

$ lsb_release -a
Distributor ID: Ubuntu
Description: Ubuntu 18.04.3 LTS
Release: 18.04
Codename: bionic

我在许多不同的项目中重复使用这个 gulpfile,它通常开箱即用,除了这个实例,当我在新的 Ubuntu 安装上安装它时。 我只是运行任务'sass',它可以工作。它会查看 sass 文件并将它们编译为 css 并将它们放入 main.css,但 watch 不起作用,它只是没有检测到我所做的任何更改。

我用 vagrant + VMBox 创建了我的 Ubuntu 实例

有什么想法吗?

【问题讨论】:

    标签: javascript node.js sass gulp ubuntu-18.04


    【解决方案1】:

    这是因为我在 windows && linux 之间使用了一个共享文件夹。只需将usePolling:true 添加到我的手表功能中即可。

    gulp.watch('./styles/*.sass',{ usePolling: true }, gulp.series('sass'));

    【讨论】:

      猜你喜欢
      • 2016-12-24
      • 2017-12-01
      • 1970-01-01
      • 2016-06-04
      • 2015-01-29
      • 1970-01-01
      • 2018-06-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多