我正在一个单独的服务器文件中运行一个带有 Express 的基本静态服务器。 在我的Gulpfile中,我使用nodemon来运行服务器文件,然后将其地址传递给browsersync以通过代理。
当浏览器导航到该网页时,我会看到一个无限加载的页面,“正在等待 localhost:3000”。刷新页面后,网站会立即加载。
下面是我的 Express 服务器和 gulpfile:
// server.js
import express from 'express';
const app = express();
app.use(express.static('build'));
app.listen(4000);
// gulpfile.babel.js
import browser from 'browser-sync';
import gulp from 'gulp';
import plugins from 'gulp-load-plugins';
const $ = plugins();
gulp.task('default',
gulp.series(server, browsersync, watch));
// Start the server with nodemon
function server(done) {
return $.nodemon({
script: 'server.js',
exec: 'babel-node',
})
.on('start', () => {
done();
});
}
// Proxy the server with browsersync
function browsersync(done) {
browser.init({
proxy: 'http://localhost:4000',
});
done();
}
// Watch for file changes
function watch() {
gulp.watch('scripts/**/*.js').on('change', gulp.series(browser.reload));
}
最佳答案
不幸的是,这个问题是由 babel-node
引起的。
关于javascript - Gulp Browsersync + Babel Express 服务器无限期地等待本地主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37472111/