javascript - node的NODE_EN如何使用
問題描述
問題1:項(xiàng)目json.package文件內(nèi)有NODE_ENV=development,是表示執(zhí)行npm run dev就設(shè)置node環(huán)境切換為開發(fā)環(huán)境?
問題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:當(dāng)我執(zhí)行npm start,出現(xiàn)這個(gè)無法正常運(yùn)行是為什么?
$ npm start> react-redux-jwt-auth-example@0.1.0 start C:UsersAdministratorDesktopreact-redux-jwt-auth-example> npm run dev> react-redux-jwt-auth-example@0.1.0 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! react-redux-jwt-auth-example@0.1.0 dev: `NODE_ENV=development node --harmony bin/webpack-dev-server`npm ERR! Exit status 1npm ERR!npm ERR! Failed at the react-redux-jwt-auth-example@0.1.0 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 是【約定俗成】的開發(fā)環(huán)境語句,一般習(xí)慣是在這條語句內(nèi)設(shè)置 NODE_ENV 環(huán)境變量。這不是必須的,但是大家都這么做…
如果不寫,那么你就起的開發(fā)環(huán)境就沒有設(shè)置入 NODE_ENV 這個(gè)變量。在 Vue 和 React 內(nèi)部會(huì)檢查這個(gè)環(huán)境變量,如在 React 中,當(dāng) NODE_ENV 為 development 時(shí)會(huì)額外打開類型檢查來方便開發(fā)。Vue 中這個(gè)環(huán)境變量也會(huì)影響 Vuex 等插件內(nèi)部時(shí)間旅行一類的功能。
Windows 下環(huán)境變量有坑,可能需要 cross-env 這個(gè)包來輔助設(shè)入環(huán)境變量。
回答2:寫了NODE_ENV=development就可以在程序中通過以下代碼來判斷是在哪種環(huán)境:
if (process.env.NODE_ENV === ’development’) { // 開發(fā)環(huán)境}
相關(guān)文章:
1. mysql - ubuntu開啟3306端口失敗,有什么辦法可以解決?2. php傳對(duì)應(yīng)的id值為什么傳不了啊有木有大神會(huì)的看我下方截圖3. extra沒有加載出來4. javascript - 微信網(wǎng)頁開發(fā)從菜單進(jìn)入頁面后,按返回鍵沒有關(guān)閉瀏覽器而是刷新當(dāng)前頁面,求解決?5. mysql - C#連接數(shù)據(jù)庫時(shí)一直這一句出問題int i = cmd.ExecuteNonQuery();6. mysql日期類型默認(rèn)值’0000-00-00’ 報(bào)錯(cuò)7. 求救一下,用新版的phpstudy,數(shù)據(jù)庫過段時(shí)間會(huì)消失是什么情況?8. mysql replace 死鎖9. windows - asp.net連接上mysql之后如何調(diào)用?比如下面的登錄驗(yàn)證功能怎么實(shí)現(xiàn)10. android - 安卓做前端,PHP做后臺(tái)服務(wù)器 有什么需要注意的?
