我正在使用NodeJS和Express开发应用程序,每次必须npm start
我都会收到错误Port已经在使用中。我必须更改www文件中的端口并再次更改npm start
。
我正在使用Mac BTW。 如何解决这个问题?
有实时重装的好模块吗?
答案 0 :(得分:2)
奇怪,看起来你没有在重新开始之前停止服务器。
一种简单而无痛的方法是使用nodemon(https://nodemon.io)。它会对代码进行更改并重新启动服务器。您必须自己重新加载浏览器。
npm i -g nodemon
nodemon [app|server|yourservername].js
Live Reload更进一步,因为它触发浏览器重新加载页面(使用websockets)。您可以按照建议查看主管。我个人更喜欢lite-server,它不需要配置来实时重新加载。只需在应用程序根目录中启动它即可。
npm i -g lite-server
lite-server
答案 1 :(得分:0)
设置开发脚本,这样您就不必使用npm start。此示例使用主管https://www.npmjs.com/package/supervisor
创建名为dev.sh
#!/bin/bash
ENV=dev \
node_modules/supervisor/lib/cli-wrapper.js \
--watch ., ../core \ # replace this with your paths to watch
--ignore-symlinks \
--ignore node_modules,public,client,data \
--extensions js \
--quiet \
--non-interactive \
--no-restart-on error \
--instant-kill \
app.js # your server script here
然后当你想开始运行sh dev
时。这个问题涉及nix上的查杀过程:Find (and kill) process locking port 3000 on Mac