您好,登錄后才能下訂單哦!
問題
實(shí)際開發(fā)中,開發(fā)環(huán)境和生產(chǎn)環(huán)境中一些變量是不同的,比如接口地址等等,打包之前需要手動(dòng)切換。
編譯時(shí)
新建env.js
let baseUrl = ''; if(process.env.NODE_ENV == 'production'){ baseUrl = 'https://xxxxxxxxx'; } else if (process.env.NODE_ENV == 'development') { baseUrl = '/api' } export { baseUrl }
process.env.NODE_ENV 是通過webpack 內(nèi)置的 DefinePlugin 為所有的依賴定義的變量
webpack.dev.conf.js
new webpack.DefinePlugin({ 'process.env.NODE_ENV': 'development' }),
webpack.prod.conf.js
new webpack.DefinePlugin({ 'process.env.NODE_ENV': 'production' }),
這樣在項(xiàng)目任意文件中都能調(diào)用process.env.NODE_ENV變量,本人測試過,process并不是掛載在window變量上,猜測可能是掛載到了node的process變量。
在運(yùn)行腳本編譯項(xiàng)目的時(shí)候,會(huì)根據(jù)變量值的不同,設(shè)置不同的baseUrl。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持億速云。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。