vue打包后生成一個(gè)配置文件可以修改IP
需求說明
因?yàn)轫?xiàng)目要適應(yīng)各個(gè)地方,需要配置不同的IP,如果還是依賴于開發(fā)人員按照不同的地區(qū)打包,對(duì)于項(xiàng)目安裝包管理起來是比較麻煩的。所以需要通過配置文件來解決這個(gè)問題。
剛開始覺得ip是開發(fā)是就寫死了的,應(yīng)該是不可以修改的,但是通過百度大法找到了解決的辦法,但是實(shí)現(xiàn)起來還是存在一些問題。從這篇文章中學(xué)習(xí)到了如何解決這個(gè)問題
實(shí)現(xiàn)
安裝插件
npm install --save-dev generate-asset-webpack-plugin
修改vue.config.js中的文件
let GenerateAssetPlugin = require('generate-asset-webpack-plugin'); let createServerConfig = function(compilation){ let cfgJson={ApiUrl:"192.168.1.174:8040"}; return JSON.stringify(cfgJson); }
由于chrome禁止ajax訪問本地文件,所以換成了jsonP訪問數(shù)據(jù)
<script> function getJson(data){ // data 就是要取的json數(shù)據(jù) console.log(data); localStorage.setItem('IP', JSON.stringify(data)) // 可以在函數(shù)內(nèi)部對(duì)json數(shù)據(jù)進(jìn)行處理 } </script> <script typeof="text/javascript" src="serverconfig.json?callback=getJson"></script>
json文件
getJson要和前面的名稱一致,并且需要在打包自行添加
getJson({"ApiUrl":"192.168.1.123:8088"})
然后就可以實(shí)現(xiàn)通過配置文件來改變IP了,在使用過程中跨域問題確實(shí)比較麻煩,通過修改瀏覽器設(shè)置對(duì)于實(shí)施來說不太友好,所以參考選擇了jsonP實(shí)現(xiàn)獲取到本地json文件。
到此這篇關(guān)于vue打包后生成一個(gè)配置文件可以修改IP的文章就介紹到這了,更多相關(guān)vue打包后修改IP內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于vue.js中關(guān)于下拉框的值默認(rèn)及綁定問題
今天小編就為大家分享一篇基于vue.js中關(guān)于下拉框的值默認(rèn)及綁定問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-08-08Vue3+echarts5踩坑以及resize方法報(bào)錯(cuò)的解決
這篇文章主要介紹了Vue3+echarts5踩坑以及resize方法報(bào)錯(cuò)的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-07-07區(qū)分vue-router的hash和history模式
這篇文章主要介紹了區(qū)分vue-router的hash和history模式,幫助大家更好的理解和學(xué)習(xí)vue路由,感興趣的朋友可以了解下2020-10-10