电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

vue項目接口域名動態獲取操作

瀏覽:78日期:2022-12-08 11:01:54

需求:

接口域名是從外部 .json 文件里獲取的。

思路:

在開始加載項目前 進行接口域名獲取,然后重置 接口域名的配置項。

實現:

1、config/index.js 文件 進行基礎配置

import axios from ’axios’const config = { requestUrl: ’http://qiniu.eightyin.cn/path.json’, //動態域名所在地址 baseUrl: { dev: ’/api/’, pro: ’http://xxx.com/’ // 接口域名,會被動態覆蓋 }, requestRemoteIp: () => { // 動態獲取 return new Promise((resolve, reject) => { axios.get(config.requestUrl).then(response => { config.baseUrl.pro = response.data.data.path; config.img.domain = config.baseUrl.pro; resolve() }, err => { reject() }); }); }}export default config

2、項目下main.js 文件 進行動態獲取

import config from ’@/config/index.js’// 讀取接口域名config.requestRemoteIp().finally(res => { /* eslint-disable no-new */ new Vue({ el: ’#app’, router, components: { App }, template: ’<App/>’ })});

3、請求數據

const instance = axios.create({ baseURL: process.env.NODE_ENV === ’development’ ? config.baseUrl.dev : config.baseUrl.pro })

補充知識:webpack + vue 打包生成公共配置文件(域名) 方便動態修改

需求原因

原來的項目中域名是打包到項目里面的,打包后不能動態配置,只能通過不同的指令打包來切換域名,每天都在測試域名和正式域名來回摩擦,后臺大佬說你們可以生成一個配置文件這樣就不用頻繁打包了直接修改配置文件就好,于是就有了這篇文章。

第一步 安裝插件

npm install --save-dev generate-asset-webpack-plugin

第二步 新建配置文件

在項目的根目錄下新建 serverConfig.json 以后會根據這個文件去生成打包的配置文件

{'ProdUrl':'http://text.com'}

第三步 引入generate-asset-webpack-plugin

在build/webpack.prod.conf.js中添加

const GenerateAssetPlugin = require(’generate-asset-webpack-plugin’);const serverConfig = require(’../serverConfig.json’);//引入根目錄下的配置文件const createJson = function() { return JSON.stringify(serverConfig);};//plugins 中使用 plugins: [ //打包時生成一個配置文件 new GenerateAssetPlugin({ filename: ’serverConfig.json’, fn: (compilation, cb) => { cb(null, createJson()); }, }),]

第四步 使用配置文件中的內容

這里根據不同項目不同需求代碼自行變換,我分享一下我的項目里的使用。在main.js 中vue實例初始化之前將baseURL存到本地

axios.get(’serverConfig.json’).then( e => { let baseURL = e.data.ProdUrl localStorage.setItem('baseURL', baseURL); new Vue({ el: ’#app’, router, store, i18n, render: h => h(App) })})

由于是使用axios獲取,是異步方法,根據情況進行處理。、

好了接下來就再也不用為了域名每天build了

打包后的目錄

vue項目接口域名動態獲取操作

以上這篇vue項目接口域名動態獲取操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Vue
相關文章:
主站蜘蛛池模板: 14米地磅厂家价价格,150吨地磅厂家价格-百科| 校服厂家,英伦校服定做工厂,园服生产定制厂商-东莞市艾咪天使校服 | 联系我们老街华纳娱乐公司官网19989979996(客服) | 新疆十佳旅行社_新疆旅游报价_新疆自驾跟团游-新疆中西部国际旅行社 | 国产频谱分析仪-国产网络分析仪-上海坚融实业有限公司 | 伊卡洛斯软装首页-电动窗帘,别墅窗帘,定制窗帘,江浙沪1000+别墅窗帘案例 | 卧涛科技有限公司科技项目申报公司|高新技术企业申报|专利申请 | 苹果售后维修点查询,苹果iPhone授权售后维修服务中心 – 修果网 拼装地板,悬浮地板厂家,悬浮式拼装运动地板-石家庄博超地板科技有限公司 | 深圳侦探联系方式_深圳小三调查取证公司_深圳小三分离机构 | 飞行者联盟-飞机模拟机_无人机_低空经济_航空技术交流平台 | 档案密集架,移动密集架,手摇式密集架,吉林档案密集架-厂家直销★价格公道★质量保证 | 冷柜风机-冰柜电机-罩极电机-外转子风机-EC直流电机厂家-杭州金久电器有限公司 | 手机存放柜,超市储物柜,电子储物柜,自动寄存柜,行李寄存柜,自动存包柜,条码存包柜-上海天琪实业有限公司 | 六维力传感器_六分量力传感器_模腔压力传感器-南京数智微传感科技有限公司 | 菏泽商标注册_菏泽版权登记_商标申请代理_菏泽商标注册去哪里 | 米顿罗计量泵(科普)——韬铭机械| 不锈钢闸阀_球阀_蝶阀_止回阀_调节阀_截止阀-可拉伐阀门(上海)有限公司 | 云阳人才网_云阳招聘网_云阳人才市场_云阳人事人才网_云阳人家招聘网_云阳最新招聘信息 | 盘装氧量分析仪-防爆壁挂氧化锆分析仪-安徽吉帆仪表有限公司 | 深圳办公室装修,办公楼/写字楼装修设计,一级资质 - ADD写艺 | 12cr1mov无缝钢管切割-15crmog无缝钢管切割-40cr无缝钢管切割-42crmo无缝钢管切割-Q345B无缝钢管切割-45#无缝钢管切割 - 聊城宽达钢管有限公司 | 翅片管换热器「型号全」_厂家-淄博鑫科环保 | 电机保护器-电动机综合保护器-浙江开民 | 大巴租车平台承接包车,通勤班车,巴士租赁业务 - 鸿鸣巴士 | 博莱特空压机|博莱特-阿特拉斯独资空压机品牌核心代理商 | 山东太阳能路灯厂家-庭院灯生产厂家-济南晟启灯饰有限公司 | 恒压供水控制柜|无负压|一体化泵站控制柜|PLC远程调试|MCGS触摸屏|自动控制方案-联致自控设备 | 陕西视频监控,智能安防监控,安防系统-西安鑫安5A安防工程公司 | pbootcms网站模板|织梦模板|网站源码|jquery建站特效-html5模板网 | 广域铭岛Geega(际嘉)工业互联网平台-以数字科技引领行业跃迁 | 多功能干燥机,过滤洗涤干燥三合一设备-无锡市张华医药设备有限公司 | 慈溪麦田广告公司,提供慈溪广告设计。 | 大流量卧式砂磨机_强力分散机_双行星双动力混合机_同心双轴搅拌机-莱州市龙跃化工机械有限公司 | 工控机-工业平板电脑-研华工控机-研越无风扇嵌入式box工控机 | 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 全自动端子机|刺破式端子压接机|全自动双头沾锡机|全自动插胶壳端子机-东莞市傅氏兄弟机械设备有限公司 | 东莞螺杆空压机_永磁变频空压机_节能空压机_空压机工厂批发_深圳螺杆空压机_广州螺杆空压机_东莞空压机_空压机批发_东莞空压机工厂批发_东莞市文颖设备科技有限公司 | 医学动画公司-制作3d医学动画视频-医疗医学演示动画制作-医学三维动画制作公司 | 北京律师事务所_房屋拆迁律师_24小时免费法律咨询_云合专业律师网 | 膜结构_ETFE膜结构_膜结构厂家_膜结构设计-深圳市烨兴智能空间技术有限公司 | 真石漆,山东真石漆,真石漆厂家,真石漆价格-山东新佳涂料有限公司 |