微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

BrowserSync与Nodemon和Express Server

如何解决BrowserSync与Nodemon和Express Server

在我的生命中,我无法使browser Sync和nodemon能够与Express服务器一起良好运行。我尝试了所有我能想象的组合。

我的Express服务器在端口5000上运行,可以打开并查看该端口,nodemon在进行更改时运行,这很好,但是浏览器仍然不能“热刷新”。我想让nodemon重新启动服务器后浏览器窗口刷新或打开一个新选项卡。

package.json脚本

"scripts": {
"start": "node app.js","dev": "set NODE_ENV=DEV&& nodemon app.js 5000 browser-sync start --proxy localhost:5000 -e * --ignore=node_modules --reload-delay 10 --no-ui --no-notify","ui": "node app.js browser-sync start nodemon app.js --port=5001 --proxy=localhost:5000 -e * --ignore=node_modules --reload-delay 10 --no-ui --no-notify","ui2": "nodemon start & browser-sync start --proxy 'localhost:5000' -e * --ignore=node_modules"
},

我只想启动我的Express服务器,使用nodemon监听更改,然后重新启动,然后重新加载浏览器窗口或启动一个新窗口以查看更改。请帮助我了解我在想什么?

解决方法

万一有人遇到同样的问题,那时候我意识到我需要打开第二个终端窗口来运行浏览器同步,这是一个谜。现在在package.json中使用以下脚本可以很好地工作!

因此,首先运行npm run start/dev depending if you want server restarts on changes or not then open a 2nd terminal window and run npm run ui`。就我而言,我的app.js在8000端口上启动。

package.json

 "scripts": {
    "start": "node app.js","dev": "nodemon -e * app.js","ui": "browser-sync start --proxy localhost:8000 --files=**/*  --ignore=node_modules --reload-delay 10000 --no-ui --no-inject-changes"
  },

app.js-const port = process.env.PORT || '8000';

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。