vue如何動態(tài)配置ip與端口
vue動態(tài)配置ip與端口
考慮一個成品的項目會給到各地方進行部署,而每個地方的ip和端口均無法保證統(tǒng)一,為了抽離開發(fā)人員的工作,需要對項目進行一定的配置,配置后的項目,只需要修改打包后的配置文件,填寫相關(guān)的ip和端口,即可實現(xiàn)項目的部署。
由于vue打包后會生成static包、index文件,為了防止打包后混淆,可以在項目的static文件中新建IPConfig.js文件,如:
var IPConfig = window.IPConfig = {
'IP': 'http://域名',
'HOST': '端口號'
}如何在項目的index文件中引入
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=0">
<title>ysa</title>
<script type="text/javascript" src="./static/IPConfig.js" async></script>
</head>
<body>
<div id="app-box"></div>
<!-- built files will be auto injected -->
</body>
</html>最后在需要使用到ip和端口的地方,直接使用即可,達(dá)到快速部署的目的
URL: IPConfig.IP + ':' + IPConfig.HOST,
項目打包后static文件中生成的文件為

成品后的項目無論在哪個地方部署,只需要修改配置文件中的ip和端口即可使用項目
動態(tài)配置IP及端口,打包后隨時改隨時生效
一.利用public下的文件不會被打包的原理
在pubic下生成一個json文件,在封裝的axios中用原生ajax請求去獲取json文件,根據(jù)自定義的環(huán)境來設(shè)置接口地址。
config.json文件
{
"url": "http://www.itcbc.com:3006/api/getbooks"
}

下面是簡單寫了個ajax請求,點擊事件。
var xhr = new XMLHttpRequest();
xhr.open('GET', "./config.json",true);
xhr.send(null);
xhr.onreadystatechange = function () {
if (xhr.status === 200 && xhr.readyState === 4) {
let baseURL = JSON.parse(xhr.responseText).url
console.log(baseURL)
console.log(xhr)
}
}

然后前端打包生成dist/build目錄。
生成后,要在本地測下行不行,也就是打包后如何在本地啟動服務(wù)運行。
1、全局安裝live-server插件
npm install -g live-server
2、在dist/build文件夾(剛剛打包成功后多出來的文件夾)終端輸入
live-server
效果圖:

然后修改config.json里的url,點擊事件后,打印的url會變。
二.利用 generate-asset-webpack-plugin 插件
使用 generate-asset-webpack-plugin 插件,配置一大堆文件,通過請求獲取數(shù)據(jù),安全性高,但過程麻煩。(網(wǎng)上看的,我沒試過)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
vue3 ts組合式API異常onMounted is called when&
這篇文章主要為大家介紹了vue3 ts組合式API異常onMounted is called when there is no active component問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-05-05
vue項目或網(wǎng)頁上實現(xiàn)文字轉(zhuǎn)換成語音播放功能
這篇文章主要介紹了在vue項目或網(wǎng)頁上實現(xiàn)文字轉(zhuǎn)換成語音,需要的朋友可以參考下2020-06-06
vue.js聲明式渲染和條件與循環(huán)基礎(chǔ)知識
這篇文章主要為大家詳細(xì)介紹了vue.js聲明式渲染和條件與循環(huán)的基礎(chǔ)知識,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-07-07
詳解vue-template-admin三級路由無法緩存的解決方案
這篇文章主要介紹了vue-template-admin三級路由無法緩存的解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03
Vue Cli 3項目使用融云IM實現(xiàn)聊天功能的方法
這篇文章主要介紹了Vue Cli 3項目 使用融云IM實現(xiàn)聊天功能,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-04-04

