Bagaimana cara menonton file dalam tegukan? [duplikat]

Aug 15 2020

Saya mengikuti kursus lama dalam pengembangan web dan saya terjebak terkait dengan gulp. Apa yang saya coba cari tahu adalah bagaimana untuk menonton file menggunakan jam tangan gulp. Saya mendapat pesan kesalahan setiap kali saya menekan "gulp watch" dalam perintah saya. Adakah yang tahu bagaimana cara memperbaikinya? Ini kode gulpfile.js saya:

<pre>
var gulp = require('gulp'),
watch = require('gulp-watch');

gulp.task('default', function() {
  console.log("This is a gulp task");
});

gulp.task('html', function() {
  console.log("This is your HTML");
});

gulp.task('styles', function() {
  console.log("This is for your css/sass/postcss`enter code here`");
});

gulp.task('watch', function() {

  watch('./app/index.html', function() {
    gulp.start('html');
  });

  watch('./app/assets/styles/**/*.css', function() {
    gulp.start('styles');
  });

});
</pre>

Inilah pesan kesalahannya:

(node:7812) UnhandledPromiseRejectionWarning: TypeError: gulp.start is not a function
(node:7812) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:7812) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Jawaban

nunop Aug 17 2020 at 21:30

Karena gulp.startsudah tidak digunakan lagi sejak v4 dan Anda menggunakan versi Gulp ini, Anda mungkin ingin mencoba gulp.series:

gulp.task('watch', gulp.series('styles', 'html',  function(done) {
    gulp.watch('./app/assets/styles/**/*.css', gulp.series('styles'));
    gulp.watch('./app/index.html', gulp.series('html'));
    done();
}));