Vue項目判斷開發(fā)、測試、正式環(huán)境過程
方法一
最簡單的方法:通過判斷l(xiāng)ocation.href來判斷環(huán)境
function env() {
? ? if (process.env.NODE_ENV === "development") return "development"; ? //開發(fā)環(huán)境
? ? if (window.location.href.includes('192.168')) return 'test'; ? ? ? ?//測試環(huán)境,"192.168"根據實際情況而定
? ? return 'production' ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //線上環(huán)境
}方法二
適用于Vue Cli 2.x構建的項目
Vue Cli 2.x構建的項目只有npm run dev和npm run build兩條開發(fā)和編譯的命令。而要添加測試環(huán)境,我們可以擴展一條npm run test的命令輸出測試環(huán)境下執(zhí)行的代碼。
1.在build文件夾中創(chuàng)建test.js文件
test.js中的代碼很簡單,就兩行。主要就是配置一個環(huán)境變量用以區(qū)別測試和正式環(huán)境。這里沒有直接修改原有的process.env.NODE_ENV是擔心會影響到原本的邏輯。
注意:type的值必須單雙引號兩層嵌套,不能直接為’test’,否則會報錯,具體代碼如下:
// 配置環(huán)境變量 type 為 test
process.env.type = '"test"'
// 引入build.js文件,執(zhí)行原先的編譯代碼
require('./build')2.修改config文件夾中的prod.env.js文件
配置好后就可以在項目代碼中調用process.env.type了,代碼如下:
module.exports = {
? NODE_ENV: '"production"',
? // 將上文設置的環(huán)境變量,賦值到 type 屬性上
? type: process.env.type
}3.在package.json文件中添加npm run test命令
添加一條命令,執(zhí)行我們上文創(chuàng)建的test.js文件
"scripts": {
? ? "dev": "node build/dev-server.js",
? ? "test": "node build/test.js",
? ? "build": "node build/build.js"
},4.在項目代碼中判斷環(huán)境
按照上述的步驟做完后,就可以在項目代碼中寫判斷了
let baseURL
// 開發(fā)環(huán)境
if (process.env.NODE_ENV === 'development') {
? ? baseURL = 'http://192.168.1.110:8080/'
// 編譯環(huán)境
} else {
? ? // 測試環(huán)境
? ? if (process.env.type === 'test') {
? ? ? ? baseURL = 'http://test.xxx.com/'
? ? // 正式環(huán)境
? ? } else {
? ? ? ? baseURL = 'http://app.xxx.com/'
? ? }
}以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
vue.js使用Element-ui實現(xiàn)導航菜單
這篇文章主要為大家詳細介紹了vue.js使用Element-ui中實現(xiàn)導航菜單,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09

