Node.js使用supervisor進(jìn)行開發(fā)中調(diào)試的方法
如果你有 PHP 開發(fā)經(jīng)驗(yàn),會習(xí)慣在修改 PHP 腳本直接刷新瀏覽器以查看結(jié)果,而你 在開發(fā) Node.js 實(shí)現(xiàn)的 HTTP 應(yīng)用時會發(fā)現(xiàn),無論你修改了代碼的哪一個部分,都必須終止Node.js然后重新運(yùn)行。
這是因?yàn)?Node.js 只有在第一次引用到某一部分時才會去解析 本文件,以后都會直接訪問內(nèi)存,避免重復(fù)載入,而 PHP 則是重新讀取并解析腳本(如果沒有專門的優(yōu)化配置)。
在開發(fā)Node.js實(shí)現(xiàn)HTTP應(yīng)用時會發(fā)現(xiàn),無論你修改了代碼的哪一部分,都必須終止Node.js再重新運(yùn)行才會奏效。這是因?yàn)镹ode.js只有在第一次引用到某部分時才會去解析腳本文件,以后都會直接訪問內(nèi)存,避免重復(fù)載入。
Node.js的這種設(shè)計雖然有利于提高性能,卻不利于開發(fā)調(diào)試,因 為我們在開發(fā)過程中總是希望修改之后立即看到結(jié)果,而不是每次都要終止并重新啟動。
supervisor 可以幫助你實(shí)現(xiàn)這個功能,它會監(jiān)視你對代碼的改動,并自動重動 Node.js。
使用方法很簡單,首先使用 npm
安裝 supervisor
:
$ npm install -g supervisor
如果使用的是 Linux 或 Mac,可以使用 sudo npm install -g supervisor
來安裝。
接下來,使用 supervisor動 app.js: $ supervisor app.js
DEBUG: Running node-supervisor with
DEBUG: program ‘a(chǎn)pp.js'
DEBUG: –watch ‘.'
DEBUG: –extensions ‘node|js'
DEBUG: –exec ‘node'
DEBUG: Starting child process with ‘node app.js' DEBUG: Watching directory ‘/home/byvoid/.' for changes. HTTP server is listening at port 3000. 代碼被改動時,運(yùn)行本會被重新啟動。在終端中顯示的結(jié)果如下:
DEBUG: crashing child
DEBUG: Starting child process with ‘node app.js'
HTTP server is listening at port 3000.
supervisor 這個小工具可以解決開發(fā)中的調(diào)試問題。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
- vscode調(diào)試node.js的實(shí)現(xiàn)方法
- 詳解如何在vscode里面調(diào)試js和node.js的方法步驟
- sublime text配置node.js調(diào)試(圖文教程)
- 詳解使用Visual Studio Code對Node.js進(jìn)行斷點(diǎn)調(diào)試
- 基于node.js之調(diào)試器詳解
- Node.js利用debug模塊打印出調(diào)試日志的方法
- Node.js調(diào)試技術(shù)總結(jié)分享
- 利用Chrome DevTools直接調(diào)試Node.js和JavaScript的方法詳解(并行)
- 調(diào)試Node.JS的輔助工具(NodeWatcher)
- Node.js 深度調(diào)試方法解析
相關(guān)文章
詳解nodejs中exports和module.exports的區(qū)別
本文主要介紹了exports 和 module.exports 的區(qū)別。具有很好的參考價值,下面跟著小編一起來看下吧2017-02-02Node.js全局對象Global的實(shí)現(xiàn)
在Nodejs下全局變量和全局函數(shù)都是可以使用global來訪問到的,本文主要介紹了Node.js全局對象Global的實(shí)現(xiàn),具有一定的參考價值,感興趣的可以了解一下2023-12-12node.js基于express使用websocket的方法
這篇文章主要介紹了node.js基于express使用websocket的方法,結(jié)合實(shí)例形式分析了node.js基于express調(diào)用websocket相關(guān)設(shè)置與使用操作技巧,需要的朋友可以參考下2017-11-11NodeJs環(huán)境中NODE_ENV介紹和設(shè)置方法
這篇文章主要給大家介紹了關(guān)于NodeJs環(huán)境中NODE_ENV介紹和設(shè)置的相關(guān)資料,NODE_ENV其實(shí)就是環(huán)境變量之一,用于設(shè)置nodejs當(dāng)前的運(yùn)行環(huán)境,需要的朋友可以參考下2024-07-07