gulp 浏览器同步没用,我安装了 npm browser sync 但没用
gulp browser sync didn't work, I have install npm browser sync but not working
我新使用 Gulp。我已经安装 npm install -g browser-sync
,但安装完成后,我收到这样的警告代码
assert.js:350
throw err;
^
AssertionError [ERR_ASSERTION]: Task function must be specified
at Gulp.set [as _setTask] (D:\PROJECT\TONJOO\test\node_modules\undertaker\lib\set-task.js:10:3)
at Gulp.task (D:\PROJECT\TONJOO\test\node_modules\undertaker\lib\task.js:13:8)
at Object.<anonymous> (D:\PROJECT\TONJOO\test\gulpfile.js:12:6)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Module.require (internal/modules/cjs/loader.js:637:17)
at require (internal/modules/cjs/helpers.js:22:18)
我尝试重新安装 npm install -g browser-sync
但没有帮助,我的代码有什么问题吗?
你可以在这里查看我的代码:
gulpfile.js
var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync').create();
gulp.task('sass', function(){
return gulp.src('app/scss/styles.scss')
.pipe(sass())
.pipe(gulp.dest('app/css'))
.pipe(browserSync.stream());
});
gulp.task('serve', ['sass'], function() {
browserSync.init({
server: "./"
});
gulp.watch("./scss/styles.scss", ['sass']);
gulp.watch("./*.html").on('change', browserSync.reload);
});
gulp.task('default', ['serve']);
你能帮我解决这个麻烦吗?谢谢
要确保安装了浏览器同步,您必须查看 package.json 文件。如果您在 'Dependencies' 下看到 browser-sync,那么它已成功安装。
我认为当您尝试 运行 gulp 任务时会发生错误,那是因为您使用了一些旧的 gulp 语法。
[sass] becomes gulp.series('sass')
查看下面的更改,了解您的进展情况。
var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync');
gulp.task('sass', function(){
return gulp.src('app/scss/styles.scss')
.pipe(sass())
.pipe(gulp.dest('app/css'))
.pipe(browserSync.stream());
});
gulp.task('serve', function() {
browserSync.init({
server: "./"
});
gulp.watch("./scss/styles.scss", gulp.series('sass'));
gulp.watch("./*.html").on('change', browserSync.reload());
});
gulp.task('default', gulp.series('sass', 'serve'));
话虽这么说,浏览器同步目前对我来说也不是很好,似乎他们有很多问题。我转而使用实时服务器。
我新使用 Gulp。我已经安装 npm install -g browser-sync
,但安装完成后,我收到这样的警告代码
assert.js:350
throw err;
^
AssertionError [ERR_ASSERTION]: Task function must be specified
at Gulp.set [as _setTask] (D:\PROJECT\TONJOO\test\node_modules\undertaker\lib\set-task.js:10:3)
at Gulp.task (D:\PROJECT\TONJOO\test\node_modules\undertaker\lib\task.js:13:8)
at Object.<anonymous> (D:\PROJECT\TONJOO\test\gulpfile.js:12:6)
at Module._compile (internal/modules/cjs/loader.js:689:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:700:10)
at Module.load (internal/modules/cjs/loader.js:599:32)
at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
at Function.Module._load (internal/modules/cjs/loader.js:530:3)
at Module.require (internal/modules/cjs/loader.js:637:17)
at require (internal/modules/cjs/helpers.js:22:18)
我尝试重新安装 npm install -g browser-sync
但没有帮助,我的代码有什么问题吗?
你可以在这里查看我的代码: gulpfile.js
var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync').create();
gulp.task('sass', function(){
return gulp.src('app/scss/styles.scss')
.pipe(sass())
.pipe(gulp.dest('app/css'))
.pipe(browserSync.stream());
});
gulp.task('serve', ['sass'], function() {
browserSync.init({
server: "./"
});
gulp.watch("./scss/styles.scss", ['sass']);
gulp.watch("./*.html").on('change', browserSync.reload);
});
gulp.task('default', ['serve']);
你能帮我解决这个麻烦吗?谢谢
要确保安装了浏览器同步,您必须查看 package.json 文件。如果您在 'Dependencies' 下看到 browser-sync,那么它已成功安装。
我认为当您尝试 运行 gulp 任务时会发生错误,那是因为您使用了一些旧的 gulp 语法。
[sass] becomes gulp.series('sass')
查看下面的更改,了解您的进展情况。
var gulp = require('gulp');
var sass = require('gulp-sass');
var browserSync = require('browser-sync');
gulp.task('sass', function(){
return gulp.src('app/scss/styles.scss')
.pipe(sass())
.pipe(gulp.dest('app/css'))
.pipe(browserSync.stream());
});
gulp.task('serve', function() {
browserSync.init({
server: "./"
});
gulp.watch("./scss/styles.scss", gulp.series('sass'));
gulp.watch("./*.html").on('change', browserSync.reload());
});
gulp.task('default', gulp.series('sass', 'serve'));
话虽这么说,浏览器同步目前对我来说也不是很好,似乎他们有很多问题。我转而使用实时服务器。