需求: 首次登錄進入界面 需要 正常請求,返回多選列表习劫,根據(jù)返回列表對應(yīng)的服務(wù)地址涌庭,更換全局服務(wù)地址
實現(xiàn)思路:
定義本地存儲服務(wù)地址(可以同store存儲結(jié)合使用),登錄頁面加載時情況當(dāng)前服務(wù)存儲烂斋, 正常返回列表選擇地址,然后存儲到本地础废;在請求封裝做統(tǒng)一攔截汛骂,更改服務(wù)配置baseUrl
具體實現(xiàn):
image.png
登錄頁放下拉服務(wù)列表自定義,首次無默認评腺,change事件后獲取當(dāng)前值并存儲 頁面代碼如下
// vue
<a-form-item label="測試服務(wù)地址">
<a-select
placeholder="請選擇測試地址"
v-model="urlPath"
@change="handleChangeUrl"
>
<a-select-option key="1" value=" http://www.baidu1.com">
http://www.baidu1.com
</a-select-option>
<a-select-option key="2" value=" http://www.zhihu2.com">
http://www.zhihu2.com
</a-select-option>
</a-select>
</a-form-item>
// methods
handleChangeUrl (url) {
this.$db.save('serverPath', url)
console.log(this.$db.get('serverPath'))
},
// 路由攔截處
FEBS_REQUEST.interceptors.request.use((config) => {
let serverPath = db.get('serverPath')
if (JSON.stringify(serverPath) === '{}'||'') {
serverPath = ''
}
if (serverPath) {
config.baseURL = serverPath
}
})
注意: 退出時候需要清空 本地存儲serverPath