javascript - node的NODE_EN如何使用
問(wèn)題描述
問(wèn)題1:項(xiàng)目json.package文件內(nèi)有NODE_ENV=development,是表示執(zhí)行npm run dev就設(shè)置node環(huán)境切換為開發(fā)環(huán)境?
問(wè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', },
問(wèn)題3:當(dāng)我執(zhí)行npm start,出現(xiàn)這個(gè)無(wú)法正常運(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.
問(wèn)題解答
回答1:npm run dev 是【約定俗成】的開發(fā)環(huán)境語(yǔ)句,一般習(xí)慣是在這條語(yǔ)句內(nèi)設(shè)置 NODE_ENV 環(huán)境變量。這不是必須的,但是大家都這么做…
如果不寫,那么你就起的開發(fā)環(huán)境就沒(méi)有設(shè)置入 NODE_ENV 這個(gè)變量。在 Vue 和 React 內(nèi)部會(huì)檢查這個(gè)環(huán)境變量,如在 React 中,當(dāng) NODE_ENV 為 development 時(shí)會(huì)額外打開類型檢查來(lái)方便開發(fā)。Vue 中這個(gè)環(huán)境變量也會(huì)影響 Vuex 等插件內(nèi)部時(shí)間旅行一類的功能。
Windows 下環(huán)境變量有坑,可能需要 cross-env 這個(gè)包來(lái)輔助設(shè)入環(huán)境變量。
回答2:寫了NODE_ENV=development就可以在程序中通過(guò)以下代碼來(lái)判斷是在哪種環(huán)境:
if (process.env.NODE_ENV === ’development’) { // 開發(fā)環(huán)境}
相關(guān)文章:
1. Mysql && Redis 并發(fā)問(wèn)題2. javascript - 百度echarts series數(shù)據(jù)更新問(wèn)題3. css3 - 手機(jī)網(wǎng)頁(yè)中用css寫1px的描邊,為什么需要加一句overflow:hidden才能真正顯示1px?4. php - 第三方支付平臺(tái)在很短時(shí)間內(nèi)多次異步通知,訂單多次確認(rèn)收款5. python - type函數(shù)問(wèn)題6. javascript - node服務(wù)端渲染的困惑7. css3 - css before 中文亂碼?8. mysql - 一個(gè)表和多個(gè)表是多對(duì)多的關(guān)系,該怎么設(shè)計(jì)9. css - 求推薦幾款好用的移動(dòng)端頁(yè)面布局調(diào)試工具呢?10. mysql新建字段時(shí) timestamp NOT NULL DEFAULT ’0000-00-00 00:00:00’ 報(bào)錯(cuò)
