項(xiàng)目開發(fā)中,前端在配置后端api域名時(shí)很困擾,常常出現(xiàn):
創(chuàng)新互聯(lián)專注于峽江企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站建設(shè),商城系統(tǒng)網(wǎng)站開發(fā)。峽江網(wǎng)站建設(shè)公司,為峽江等地區(qū)提供建站服務(wù)。全流程定制網(wǎng)站開發(fā),專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
本地開發(fā)環(huán)境: api-dev.demo.com
測(cè)試環(huán)境: api-test.demo.com
線上生產(chǎn)環(huán)境: api.demo.com,
這次是在Vue.js項(xiàng)目中打包,教大家個(gè)方法:
使用 npm run build -- xxx ,根據(jù)傳遞參數(shù)xxx來判定不同的環(huán)境,給出不同的域名配置。
1.項(xiàng)目中/config/dev.env.js修改:
新增:HOST: '"dev"'
'use strict' const merge = require('webpack-merge') const prodEnv = require('./prod.env') module.exports = merge(prodEnv, { NODE_ENV: '"development"', HOST: '"dev"' })
2.項(xiàng)目中/config/prod.env.js修改:
獲取傳遞進(jìn)來的參數(shù):
'use strict' let HOST = process.argv.splice(2)[0] || 'prod'; console.log(HOST); module.exports = { NODE_ENV: '"production"', HOST: '"'+HOST+'"' }
3.項(xiàng)目中ajax封裝的地方修改:
/** ** 設(shè)置API接口域名 **/ let apiUrl = ''; // 根據(jù) process.env.HOST 的值判斷當(dāng)前是什么環(huán)境 // 命令:npm run build -- test ,process.env.HOST就設(shè)置為:'test' let HOST = process.env.HOST; HOST = HOST === 'prod' ? '' : '-' + HOST; apiUrl = 'http://api'+HOST+'.demo.com'; axios.defaults.baseURL = apiUrl;
4.最后敲命令:
npm run build -- test
注意–是2個(gè)橫杠,后面跟參數(shù),這樣 process.env.HOST 就獲取到參數(shù) 'test' 了,
apiUrl = 'http://api-test.demo.com'
若線上prod發(fā)布打包,npm run build -- prod
apiUrl = 'http://api.demo.com'
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
網(wǎng)站題目:vue項(xiàng)目webpack中Npm傳遞參數(shù)配置不同域名接口
當(dāng)前URL:http://aaarwkj.com/article42/jpoihc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、定制開發(fā)、網(wǎng)站維護(hù)、手機(jī)網(wǎng)站建設(shè)、全網(wǎng)營(yíng)銷推廣、網(wǎng)站設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)