gpt4 book ai didi

javascript - Gulp 4.browser-sync的问题//下面的任务没有完成 : browser-sync

转载 作者:行者123 更新时间:2023-11-28 00:37:19 30 4
gpt4 key购买 nike

不明白浏览器同步中的错误阅读文档,其中 gulp 4 真的没有写任何关于它的内容。在 gulp 4 的文档中也没有理解(异步)。如何解决这个问题。谢谢。 bla bla bla bla bla bla bla bla bla bla

 'default' errored after 23 ms
The following tasks did not complete: browser-sync
Did you forget to signal async completion?

var gulp = require('gulp'),
gutil = require('gulp-util' ),
sass = require('gulp-sass'),
browserSync = require('browser-sync'),
concat = require('gulp-concat'),
uglify = require('gulp-uglify'),
cleancss = require('gulp-clean-css'),
rename = require('gulp-rename'),
autoprefixer = require('gulp-autoprefixer'),
notify = require('gulp-notify');

gulp.task('browser-sync', function() {
browserSync({
server: {
baseDir: 'app'
},
notify: false,
// open: false,
// online: false, // Work Offline Without Internet Connection
// tunnel: true, tunnel: "projectname", // Demonstration page: http://projectname.localtunnel.me
})
});

gulp.task('styles', function() {
return gulp.src('app/'+syntax+'/**/*.'+syntax+'')
.pipe(sass({ outputStyle: 'expanded' }).on("error", notify.onError()))
.pipe(rename({ suffix: '.min', prefix : '' }))
.pipe(autoprefixer(['last 15 versions']))
.pipe(cleancss( {level: { 1: { specialComments: 0 } } }))
.pipe(gulp.dest('app/css'))
.pipe(browserSync.stream())
});

gulp.task('scripts', function() {
return gulp.src([
'app/libs/jquery/dist/jquery.min.js',
'app/js/common.js',
])
.pipe(concat('scripts.min.js'))
.pipe(uglify())
.pipe(gulp.dest('app/js'))
.pipe(browserSync.reload({ stream: true }))
});

gulp.task('code', function() {
return gulp.src('app/*.html')
.pipe(browserSync.reload({ stream: true }))
});


gulp.task('watch', function() {
gulp.watch('app/'+syntax+'/**/*.'+syntax+'', gulp.parallel('styles'));
gulp.watch(['libs/**/*.js', 'app/js/common.js'], gulp.parallel('scripts'));
gulp.watch('app/*.html', gulp.parallel('code'))
});
gulp.task('default', gulp.parallel('watch', 'browser-sync'));

最佳答案

改用这个:

gulp.task('browser-sync', function(done) {
browserSync({
server: {
baseDir: 'app'
},
notify: false,
// open: false,
// online: false, // Work Offline Without Internet Connection
// tunnel: true, tunnel: "projectname", // Demonstration page: http://projectname.localtunnel.me
});
done();
});

注意 done - 这是指示浏览器同步设置任务完成的简单方法。参见 callback to signal async completion .


对于@Dirk 关于不使用 .create() 的评论,请参阅

Post 2.0.0 syntax (recommended)

Whilst the above is still supported [ed. no create()], we now recommend the following instead. Calling .create() means you get a unique reference & allows you to create multiple servers or proxies.

来自 api documentation .

因此使用 create 允许打开 browserSync 的多个实例 - 提供不同的文件或观看/重新加载不同的文件 - 但在更简单的情况下不是必需的。

关于javascript - Gulp 4.browser-sync的问题//下面的任务没有完成 : browser-sync,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54077113/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com