在Electron项目中,每次修改了代码都需要手动关闭应用,再执行npm start
重启应用。
Nodemon 是一个非常实用的工具,主要用于在开发 Node.js 应用时自动监测文件的变化并重新启动服务器。
安装nodemon
开发环境安装nodemon:
npm i nodemon -D
检查是否安装成功:
nodemon -v
修改 package.json
命令:
"scripts": {"start": "nodemon --exec electron ."
},
--exec
参数告诉 nodemon
要执行的命令。这里指定了 electron .
。
修改 main.js
后,应用自动重启。
但是修改.html
页面,应用没有自动刷新页面。
配置nodemon
nodemon 有三种配置方式:命令参数、package.json
和 nodemon.json
。
配置的优先级:nodemon.json
> package.json
> 命令参数。
- 在根目录创建
nodemon.json
文件并配置nodemon.json
规则:
{"ignore": ["node_modules","dist"],"restartable": "r","watch": ["*.*"],"ext": "html,js,css"
}
- 在
package.json
中配置
{"nodemonConfig": {"ignore": ["node_modules","dist"],"restartable": "r","watch": ["*.*"],"ext": "html,js,css"},
}
- 通过命令行配置
使用 --watch
参数可以明确指定要监视的文件或目录:
nodemon --watch./src --watch./config main.js
这里指定了监视 ./src
和 ./config
目录下的文件变化。
使用 --ignore
参数可以忽略某些文件或目录:
nodemon --ignore./node_modules --ignore./dist main.js
这将忽略 ./node_modules
和 ./dist
目录下的文件变化。
一般来说,如果想要使用 nodemon 来监视和自动重启 Electron 项目,应该确保命令中的文件参数是正确的项目入口文件,通常是 main.js
。
nodemon配置项
-
watch
:监视文件或文件夹的路径。- :当这些路径下的文件发生变化时,nodemon 会触发相应的操作(通常是重新启动应用程序)。
- 例如:
"watch": ["*.*"]
-
ignore
:忽略监视的路径。- 用于排除一些频繁变动但不应该触发应用重新启动的文件或文件夹。
- 例如:
"ignore": [ "node_modules", "dist" ]
-
delay
:设置延迟时间(以毫秒为单位)。- 当文件发生变化后,nodemon 不会立即重新启动应用程序,而是等待指定的延迟时间后,如果没有更多的文件变化,才会触发重新启动。
- 例如:
"delay": 2000
-
ext
:指定默认文件扩展名。- 如果不指定这个选项,nodemon 会默认监视
.js
文件。可以用逗号分隔多个扩展名。 - 例如:
"ext": "js,json,html"
- 如果不指定这个选项,nodemon 会默认监视
-
script
:指定监视的文件(一般是项目入口的.js
文件)。- 当这个文件发生变化时,nodemon 会触发重新启动。
- 例如:
"script": "main.js",
-
exec
:执行的命令。- 当监视的文件发生变化时,nodemon 将执行这个命令来重新启动应用程序。
- 例如:
"start": "nodemon --exec electron ."
-
restartable
:配置重启应用的短命令。- 例如:
"restartable": "r"
,可以在vs code 终端 输入r
,回车,重启应用。
- 例如: