VUE 利用 webpack 給生產(chǎn)環(huán)境和發(fā)布環(huán)境配置不同的接口地址

原文地址:http://blog.csdn.net/fungleo/article/details/54574049#comments

前言

我們在開發(fā)項(xiàng)目的時(shí)候,往往會在同一個(gè)局域網(wǎng)進(jìn)行開發(fā),前后端分離同時(shí)進(jìn)行開發(fā)。我們前端調(diào)用后端給的接口也是在局域網(wǎng)內(nèi)部的。但是,當(dāng)項(xiàng)目推到線上的時(shí)候,我們會從真實(shí)服務(wù)器上獲取接口,因此,我們可能在測試接口和真實(shí)接口之間頻繁切換,讓人十分惡心。
因此,我們有必要想辦法解決這個(gè)問題。

第一步,分別設(shè)置不同的接口地址

首先,我們分別找到下面的文件:

/config/dev.env.js
/config/prod.env.js

其實(shí),這兩個(gè)文件就是針對生產(chǎn)環(huán)境和發(fā)布環(huán)境設(shè)置不同參數(shù)的文件。我們打開dev.en.js文件。代碼如下:

var merge = require('webpack-merge')
var prodEnv = require('./prod.env')

module.exports = merge(prodEnv, {
  NODE_ENV: '"development"'
})

好,我們在NODE_ENV下面增加一項(xiàng),代碼如下:

var merge = require('webpack-merge')
var prodEnv = require('./prod.env')

module.exports = merge(prodEnv, {
  NODE_ENV: '"development"',
  API_ROOT: '"http://192.168.1.8/api"'
})

然后,我們編輯prod.env.js文件,

module.exports = {
  NODE_ENV: '"production"',
  API_ROOT: '"http://www.baidu.com/api"'
}

好。我們分別設(shè)定的路徑已經(jīng)有了。下面就是如何調(diào)用的問題了。

第二部,在代碼中調(diào)用設(shè)置好的參數(shù)

以我們之前的演示代碼為例。你自己的項(xiàng)目請根據(jù)你自己的情況調(diào)整。以下文件和代碼僅供參考。

我們打開src/config/api.js文件,將原來開頭的代碼

// 配置API接口地址
var root = 'https://cnodejs.org/api/v1'

然后就完成了我們的配置工作。最后,重啟項(xiàng)目,就能使新配置的接口地址生效了。
在經(jīng)過這樣的配置之后,我們在運(yùn)行

npm run dev

的時(shí)候,跑的就是測試接口。而我們運(yùn)行

npm run build

打包項(xiàng)目的時(shí)候,打包的是服務(wù)器正式接口,我們就不用調(diào)來調(diào)去得了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容