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"根據(jù)實際情況而定 ? ? return 'production' ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //線上環(huán)境 }
方法二
適用于Vue Cli 2.x構(gòu)建的項目
Vue Cli 2.x構(gòu)建的項目只有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文件
配置好后就可以在項目代碼中調(diào)用process.env.type了,代碼如下:
module.exports = { ? NODE_ENV: '"production"', ? // 將上文設(shè)置的環(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/' ? ? } }
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue在html標簽{{}}中調(diào)用函數(shù)的方法總結(jié)及對比
這篇文章主要給大家介紹了關(guān)于vue在html標簽{{}}中調(diào)用函數(shù)的方法總結(jié)及對比,文中通過實例代碼介紹的非常詳細,對大家學習或者使用vue具有一定的參考學習價值,需要的朋友可以參考下2023-03-03vue.js使用Element-ui實現(xiàn)導(dǎo)航菜單
這篇文章主要為大家詳細介紹了vue.js使用Element-ui中實現(xiàn)導(dǎo)航菜單,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-09-09