1.在node中蛔外,有全局變量process表示的是當前的node進程
NODE_ENV是一個由node.js暴露給執(zhí)行腳本的系統(tǒng)環(huán)境變量铺浇,通常用于確定在開發(fā)環(huán)境還是生產環(huán)境下却舀,服務器工具,構建腳本和客戶端library的行為黑低,
NODE_ENV 會賦值給process.evn對象赘艳,作為他的屬性
process.evn.NODE_EVN 其值為“production(生產環(huán)境)”和“development(開發(fā)環(huán)境)”,或者“prod”和“dev”投储,
if(process.evn.NODE_EVN =="production"){
生產環(huán)境 do something
}else {
開發(fā)環(huán)境 do something
}
2.在webpack構建前端工程時第练,會經(jīng)常使用,屬性什么時候賦值給process.env的呢
以webpack的工程為例玛荞,通常是運行腳本的時候來做這件事娇掏,例如package.json中的腳本為例:
"scripts": {
"dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
"test": "npm run unit && npm run e2e",
"build": "node build/build.js"
},
3.注意,說明
NODE_ENV=development在windows環(huán)境下勋眯,會報錯婴梧,需要修改為 set NODE_ENV=production,為了解決這個差異客蹋,可以使用cross-evn 跨平臺的設置和使用環(huán)境變量塞蹭,這里就不解釋具體使用方法