我在gulp-livereload
中使用gulpfile.js
。
它适用于CSS文件,但是HTML文件崩溃。
例如,每次保存index.html
时,gulp都会崩溃并显示以下错误。
为什么会这样?
events.js:72
throw er; // Unhandled 'error' event
^
Error: listen EADDRINUSE
at errnoException (net.js:904:11)
at Server._listen2 (net.js:1042:14)
at listen (net.js:1064:10)
at Server.listen (net.js:1138:5)
at Function.app.listen (/Users/mishamoroshko/github-explorer/node_modules/express/lib/application.js:556:24)
at Gulp.<anonymous> (/Users/mishamoroshko/github-explorer/gulpfile.js:64:10)
at module.exports (/Users/mishamoroshko/github-explorer/node_modules/gulp/node_modules/orchestrator/lib/runTask.js:34:7)
at Gulp.Orchestrator._runTask (/Users/mishamoroshko/github-explorer/node_modules/gulp/node_modules/orchestrator/index.js:273:3)
at Gulp.Orchestrator._runStep (/Users/mishamoroshko/github-explorer/node_modules/gulp/node_modules/orchestrator/index.js:214:10)
at /Users/mishamoroshko/github-explorer/node_modules/gulp/node_modules/orchestrator/index.js:279:18
答案 0 :(得分:6)
您用于提供文件的端口已经在监听该端口。
答案 1 :(得分:3)
我不明白你为什么要加载connect-livereload
,你可以简单地使用gulp插件。您的错误可能与两者发生冲突,因为它们使用相同的端口。
所以将 Gulpfile 更改为:
var livereload = require('gulp-livereload');
gulp.task('watch', function() {
livereload.listen();
gulp.watch(paths.scripts, ['jshint']).on('change', livereload.changed);
gulp.watch(paths.styles, ['less']).on('change', livereload.changed);
gulp.watch(paths.views).on('change', livereload.changed);
});
gulp.task('less', function() {
return gulp.src('./app/app.less')
.pipe(less({
paths: []
}))
.pipe(gulp.dest('./app'))
.pipe(livereload());
});
删除所有connect-livereload
部分。