将 babel 与 nodemon 一起使用时,文件更改时视图不会更新?
When using babel with nodemon, view is not updated when files are changed?
package.json
"scripts": {
"build": "babel app.js -d dist",
"start": "npm run build && nodemon dist/app.js"
},
...
"devDependencies": {
"babel-cli": "^6.26.0",
"babel-preset-env": "^1.7.0",
"nodemon": "^1.18.9"
}
app.js
import express from 'express';
const app = express();
const port = process.env.PORT || 3000;
app.use('/', (req, res) => {
res.send('World 1');
});
app.listen(port, () => {
console.log('Example app listening on port 3000!');
});
当我运行npm start
浏览器输出
更改代码后,应用会重新启动。
这里我做了'World 1'到'World 2'
但是当我刷新浏览器时它仍然显示世界 1
如果我再次执行 npm start
并重建,则浏览器会显示 'World 2'
我该如何解决这个问题?
"start": "nodemon dist/app.js --exec babel-node --presets babel-preset-env",
为了使 babel 与 nodemon 一起工作,您的启动脚本应该如上所示。
请通过this。
问题是 nodemon 是 运行 构建的代码,而代码更改后构建没有发生。这就是为什么你没有得到更新。
你应该考虑 运行 nodemon 而无需在你开发时构建
nodemon --exec babel-node lib/index.js
package.json
"scripts": {
"build": "babel app.js -d dist",
"start": "npm run build && nodemon dist/app.js"
},
...
"devDependencies": {
"babel-cli": "^6.26.0",
"babel-preset-env": "^1.7.0",
"nodemon": "^1.18.9"
}
app.js
import express from 'express';
const app = express();
const port = process.env.PORT || 3000;
app.use('/', (req, res) => {
res.send('World 1');
});
app.listen(port, () => {
console.log('Example app listening on port 3000!');
});
当我运行npm start
浏览器输出
更改代码后,应用会重新启动。
这里我做了'World 1'到'World 2'
但是当我刷新浏览器时它仍然显示世界 1
如果我再次执行 npm start
并重建,则浏览器会显示 'World 2'
我该如何解决这个问题?
"start": "nodemon dist/app.js --exec babel-node --presets babel-preset-env",
为了使 babel 与 nodemon 一起工作,您的启动脚本应该如上所示。
请通过this。
问题是 nodemon 是 运行 构建的代码,而代码更改后构建没有发生。这就是为什么你没有得到更新。
你应该考虑 运行 nodemon 而无需在你开发时构建
nodemon --exec babel-node lib/index.js