首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >大口表立即完成。

大口表立即完成。
EN

Stack Overflow用户
提问于 2019-11-16 07:36:04
回答 1查看 315关注 0票数 0

我是第一次通过youtube教程学到它。我被“吞咽监视”命令卡住了,它应该跟踪我的js文件,但它不起作用。我在StackOverflow上发现了许多类似的问题,但没有一个问题对我有帮助。

这是我的密码

Package.json

代码语言:javascript
复制
{
  "name": "gulp-tutorial",
  "version": "1.0.0",
  "description": "This is gulp tutorial",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [
    "gulpfile",
    "scss",
    "js"
  ],
  "author": "Fahad Shaikh",
  "license": "GPL-3.0",
  "devDependencies": {
    "gulp": "^4.0.2",
    "gulp-autoprefixer": "^7.0.1",
    "gulp-rename": "^1.4.0",
    "gulp-sass": "^4.0.2",
    "gulp-sourcemaps": "^2.6.5",
    "gulp-watch": "^5.0.1"
  }
}

gulpfile.js

代码语言:javascript
复制
var gulp =  require('gulp');
var rename = require('gulp-rename');
var sass = require('gulp-sass');
var autoprefixer = require('gulp-autoprefixer');
var sourcemaps = require('gulp-sourcemaps');
var watch = require('gulp-watch');

var jsDIST = './dist/js/';

gulp.task('js', function () {
   return gulp.src(jsSRC)
       .pipe(gulp.dest(jsDIST));
});

gulp.task('default', gulp.series('js'));

gulp.task('watch', gulp.series('default'), function () {
   gulp.watch('./src/js/**/*.js', ['js']);
});

根据互联网上的教程和文档,在运行gulp watch之后,我不应该重新获得CLI的控制权,但是我可以在watch task完成后立即运行另一个命令。

EN

回答 1

Stack Overflow用户

发布于 2019-11-16 16:27:39

由于您使用的是gulp v4,所以请尝试以下操作:

代码语言:javascript
复制
 // you don't need this and you aren't using it anyway
 // var watch = require('gulp-watch');

var jsDIST = './dist/js/';

// gulp.task('js', function () {
//   return gulp.src(jsSRC)
//       .pipe(gulp.dest(jsDIST));
// });

function js() {
  return gulp.src(jsSRC)
     .pipe(gulp.dest(jsDIST));
}

// your main problem was in this task
// gulp.task('watch', gulp.series('default'), function () {
//  gulp.watch('./src/js/**/*.js', ['js']);  // array is incorrect in gulp v4
// });

function watch() {
   gulp.watch('./src/js/**/*.js', js);  
};

// gulp.task('default', gulp.series('js'));  // 'taskName must be in quotes'
gulp.task('default', gulp.series(js, watch));       //  functionName not in quotes

现在,您只需使用gulp命令即可运行它,而无需使用其他任何命令。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58888589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档