在开发前端项目时,我们经常需要在本地启动一个 Node 服务器来运行我们的应用程序。然而,当应用程序发生改变时,我们需要手动停止服务器并重新启动,这样很不方便。因此,我们需要一种工具能够自动检测文件变化并自动重启服务器,而 supervisor 正是这样一种工具。
什么是 supervisor
supervisor 是一个基于 Node.js 的进程管理工具,它可以自动检测 Node.js 应用程序的文件变化并重启服务器。它是一个简单易用的工具,可以帮助开发人员提高开发效率,避免手动重启服务器的麻烦。
安装 supervisor
全局安装 supervisor:
npm install -g supervisor
使用 supervisor
以一个简单的 Node.js 服务器为例,我们可以通过 supervisor 来启动该服务器。先新建一个 server.js 文件,内容如下:
-- -------------------- ---- ------- ----- ---- - ---------------- ----- -------- - ------------ ----- ---- - ----- ----- ------ - ----------------------- ---- -- - -------------- - ---- ----------------------------- -------------- --------------- ----------- --- ------------------- --------- -- -- - ------------------- ------- -- ------------------------------ ---展开代码
接下来,我们使用 supervisor 启动该服务器。在终端输入以下命令:
supervisor server.js
这时,supervisor 就会启动该服务器。我们可以在浏览器中访问 http://localhost:3000
来查看结果。
如果我们对 server.js 文件进行了修改,supervisor 会自动检测到变化并自动重启服务器,这样我们就无需手动重启服务器了。
配置 supervisor
当我们使用 supervisor 启动应用程序时,它会读取默认的配置文件 supervisor.json
。我们可以通过修改该文件来配置 supervisor 的行为。
以下是一个典型的 supervisor 配置文件:
{ "watch": ["./"], "ignore": ["./node_modules", "./logs"], "exec": "node server.js", "ext": "js,json" }
watch
:表示要监视的文件或目录,支持 glob 模式。ignore
:表示要忽略的文件或目录,同样支持 glob 模式。exec
:表示运行程序的命令,可以是任何 Shell 命令或脚本。ext
:表示要监视的文件扩展名,多个扩展名使用,
分隔。
我们可以根据自己的需求修改该配置文件。例如,如果我们将 watch
的值设为 ["./src"]
,就表示只监视 src
目录下的文件变化。如果我们将 exec
的值设为 nodemon server.js
,就可以使用 nodemon 启动程序。
结语
supervisor 是一个非常有用的工具,可以帮助我们节省时间和提高开发效率。在开发前端项目时,我们应该熟练掌握这个工具,并在实际开发中灵活运用。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/58174