VSCode 調試Node項目以及設置NODE_ENV或其他自定義環境變量

前言

之前一直使用Webstrom開發node項目,Webstrom開箱即用,內置調試。Webstrom 2019內存佔用時不時就讓我15年的Macbook Pro 8G 內存爆滿,無奈只能去嘗試VSCode 了。使用VSCode已經有一段時間了,這裏不對IDE做對比和評價,只對使用VSCode調試Node項目和設置一些常用的環境變量做一下記錄。

新建調試

使用VSCode打開Node項目,點擊最右側“調試”按鈕(蜘蛛圖案),點擊右側面板“齒輪圖標”添加設置,選擇“Node.js”,會自動打開一個名爲“launch.json”文件,

Debug面板

launch.json文件

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Launch Program",
            "program": "${workspaceFolder}/bin/www"
        }
    ]
}

launch.json文件說明

這個時候點擊debug面板上的啓動按鈕就能啓動node項目了;
調試說明

添加環境變量

使用VSCode 調試時,添加環境變量

打開 launch.json , 添加一個 “env” key,下面是添加了 NODE_ENV,PORT 變量


{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "node debug",
            "program": "${workspaceFolder}/bin/www",
            "env":{
                "NODE_ENV":"development",
                "PORT":8080,
                "CUSTOM_PARAMS":"foo"
            }
        }
    ]
}

在項目代碼中,我們可以使用 process.env.NODE_ENV 獲取到變量值,

例如:

// 獲取端口
var port = normalizePort(process.env.PORT || '3010');
app.set('port', port);
// 使用NODE_ENV
if(process.env.NODE_ENV === 'development'){
       response.status(400).json({ error});
 }else{
       response.status(400).json({error:error.code ? error : this.unknownError(),data});    
 }
npm script 方式添加node環境變量

使用npm script 添加node環境變量,執行npm run YOUR_SCRIPT 時,加載環境變量
樣例如下package.json文件:

{
 "scripts": {
    "start": "export NODE_ENV='development' && export PORT='3010' && node ./bin/www",
    "build": "export NODE_ENV='production' && node ./bin/www"
  },
}

使用pm2 管理node項目時,使用 pm2 start npm -- run YOUR_SCRIPT 方式 啓動node項目,向node中添加環境變量;

 #   -- 和 run 之間有空格
 pm2 start npm -- run build
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章