javascript - node的NODE_EN如何使用
問題描述
問題1:項目json.package文件內有NODE_ENV=development,是表示執行npm run dev就設置node環境切換為開發環境?
問題2:那么寫NODE_ENV=development與不寫有啥不同
'scripts': { 'compile': 'NODE_ENV=production webpack', 'start': 'npm run dev', 'dev': 'NODE_ENV=development node --harmony bin/webpack-dev-server', },
問題3:當我執行npm start,出現這個無法正常運行是為什么?
$ npm start> [email protected] start C:UsersAdministratorDesktopreact-redux-jwt-auth-example> npm run dev> [email protected] dev C:UsersAdministratorDesktopreact-redux-jwt-auth-example> NODE_ENV=development node --harmony bin/webpack-dev-server’NODE_ENV’ ????????????????????????е?????????????????npm ERR! Windows_NT 6.1.7601npm ERR! argv 'D:Program Filesnodejsnode.exe' 'D:Program Filesnodejsnode_modulesnpmbinnpm-cli.js' 'run' 'dev'npm ERR! node v7.2.0npm ERR! npm v3.10.9npm ERR! code ELIFECYCLEnpm ERR! [email protected] dev: `NODE_ENV=development node --harmony bin/webpack-dev-server`npm ERR! Exit status 1npm ERR!npm ERR! Failed at the [email protected] dev script ’NODE_ENV=development node --harmony bin/webpack-dev-server’.npm ERR! Make sure you have the latest version of node.js and npm installed.npm ERR! If you do, this is most likely a problem with the react-redux-jwt-auth-example package,npm ERR! not with npm itself.
問題解答
回答1:npm run dev 是【約定俗成】的開發環境語句,一般習慣是在這條語句內設置 NODE_ENV 環境變量。這不是必須的,但是大家都這么做…
如果不寫,那么你就起的開發環境就沒有設置入 NODE_ENV 這個變量。在 Vue 和 React 內部會檢查這個環境變量,如在 React 中,當 NODE_ENV 為 development 時會額外打開類型檢查來方便開發。Vue 中這個環境變量也會影響 Vuex 等插件內部時間旅行一類的功能。
Windows 下環境變量有坑,可能需要 cross-env 這個包來輔助設入環境變量。
回答2:寫了NODE_ENV=development就可以在程序中通過以下代碼來判斷是在哪種環境:
if (process.env.NODE_ENV === ’development’) { // 開發環境}
相關文章:
1. javascript - node.js promise沒用2. android 如何實現如圖中的鍵盤上的公式及edittext的內容展示呢3. c++ - 如何正確的使用QWebEngineView?4. golang - 用IDE看docker源碼時的小問題5. javascript - js 寫一個正則 提取文本中的數據6. 算法 - python 給定一個正整數a和一個包含任意個正整數的 列表 b,求所有<=a 的加法組合7. yii2中restful配置好后在nginx下報404錯誤8. java - 我在用Struts2上傳文件時,報以下錯誤怎么回事?9. PHP注冊功能10. php - 注冊驗證郵箱失效后操作問題
