vue-cli项目接口地址可配置化(多环境部署)一处修改多处适用
本文档目的在于帮助对vue了解比较少的同学,能够快速配置vue应用中的接口地址。方便项目切换服务环境后,重新修改多组件的http请求地址。
一、前言
我们在上一篇文章分享了vue-cli项目基本搭建(可点击进入查看)。
本篇文章我们分享 vue 配置全局对象。在我们平时开发项目的时候,大多数会进行数据交互,这一应用就会使用到交互模块,往往请求的url地址就随着项目模块的增多写在每个模块中,这样的缺点不用我来说,相信大家都知道:模块多了、环境多了很难以维护、修改接口地址,并且很容易出错,哪里多了一个符号或者少了一个就会请求不成功。我们今天分享的小方法就是为了解决这一问题。代码非常简单易懂,意在自己开发项目的时候很快就可以拿过来使用,也为了帮助广大前端爱好者多方位理解vue。话不多说直接上代码。
二、如何配置
思路:
1、配置全局Api其实就是在全局抛出一个公共对象、我们在src下新建一个文件夹 interface 里面 创建一个 index.js 文件用来存储全局Api对象。
2、编写index.js
interface/index.js
// 配置主机地址和端口号(可以有多个,需要测试那个环境字节打开那个base即可)
let base = "http://10.110.147.194:8088"
// let base = "http://34.231.59.44:37653"
// let base = "http://34.231.59.45:37654"
// let base = "http://34.231.59.46:37655"
// let base = "http://34.231.59.47:37656" // 在线api接口路径,需要和项目后台确认
let online_url = {
overall:base + "/report/queryNewOverView",
//service-volume-controller : Service Volume Controller
totalVolume: base + "/report/visitVolume/totalVolume",
channelCompare: base + "/report/visitVolume/channelCompare", //user-data-controller : User Data Controller
repeatUser: base + "/report/users/repeatUser",
userChannelCompare: base + "/report/users/userChannelCompare",
userDistribution: base + "/report/users/userDistribution",
userVolumeTrend: base + "/report/users/userVolumeTrend",
//efficiency-controller : Efficiency Controller
solvedRate: base + "/report/efficiency/solveRate",
solvedQuestion: base + "/report/efficiency/solveQuestion",
solveQuestionFloat: base + "/report/efficiency/solveQuestionFloat",
transferredRate: base + "/report/efficiency/transferredRate",
transferredRateF: base + "/report/efficiency/transferredRateF",
transferredQuestion: base + "/report/efficiency/transferredQuestion",
transferredQuestionF: base + "/report/efficiency/transferredQuestionF",
//kg-performance-controller : Kg Performance Controller
question: base + "/report/kgperformance/domain&question",
questionF: base + "/report/kgperformance/questionF", //session-follow-controller : Session Follow Controller
handTime: base + "/report/sessionfollow/handTime",
handTurns: base + "/report/sessionfollow/handTurns",
dialogueStage: base + "/report/sessionfollow/dialogueStage",
customerjourney: base + "/report/sessionfollow/customerjourney", //select /report/queryCountryAndChannel
domainIntent: base + "/report/auxiliary/domain_intent",
queryCountryAndChannel: base + "/report/auxiliary/queryCountryAndChannel",
partExport: base + "/report/partExport000" } //导出online_url对象
export default online_url
3、既然是全局环境都可调用的Api接口地址,那么一定要在全局引用
src/main.js
// 引入vue模块,引入index接口地址对象
import Vue from 'vue'
import App from './App'
import Api from "@/interface/index" // 将Api对象绑定在vue实例的原型上
Vue.prototype.$Api = Api
Vue.use(ElementUI)
Vue.config.productionTip = false /* eslint-disable no-new */
let gvm = new Vue({
el: '#app',
router,
Api,
components: { App },
template: '<App/>'
})
4、在项目中任何一个vue文件中我们都可以用 this.$Api 来访问接口地址,例如
最后:
本文档意在与帮助初学者快速构建vue项目,虽没什么技术含量。但不要随意转载,如需转载保存,请署上 转载地址。谢谢配合。
vue-cli项目接口地址可配置化(多环境部署)一处修改多处适用的更多相关文章
- 改造@vue/cli项目为服务端渲染-ServerSideRender
VUE SEO方案二 - SSR服务端渲染 在上一章中,我们分享了预渲染的方案来解决SEO问题,个人还是很中意此方案的,既简单又能解决大部分问题.但是也有着一定的缺陷,所以我们继续来看下一个方案--服 ...
- 使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development、production)
使用 vue-cli-service inspect 来查看一个 Vue CLI 3 项目的 webpack 配置信息(包括:development.production) --mode 指定环境模式 ...
- vue项目接口地址的定义
对于接口地址域名我们经常会遇到,那么如何去定义呢: 只要在config/dev.env.js中定义变量NODE_ENV就行啦 在.vue文件中的引用方式如下: 嗯,就是这样简单~~~~
- vue新建项目之标准路由配置--父子嵌套界面
配置路由所有用到的地方总共四步或者说四处 1.index.js(src--router--index.js) 父子界面嵌套---需要配置子路由 import Vue from 'vue' import ...
- Vuex内容解析和vue cli项目中使用状态管理模式Vuex
中文文档:vuex官方中文网站 一.vuex里面都有些什么内容? const store = new Vuex.Store({ state: { name: 'weish', age: }, gett ...
- SpringBoot01 InteliJ IDEA安装、Maven配置、创建SpringBoot项目、yml属性配置、多环境配置、自定义properties配置
1 IntelliJ IDEA 安装 下载地址:点击前往 注意:需要下载专业版本的,注册码在网上随便搜一个就行啦 2 MAVEN工具的安装 2.1 获取安装包 下载地址:点击前往 2.2 安装过程 到 ...
- vue开发项目详细教程(第一篇 搭建环境篇)
最近做vue做项目碰到了不少坑,看了三天文档便开始上手做项目了,不是我牛b,是因为项目紧,我没有时间去深入学习,所以只能一边学一边做了. 我要做的项目是一个官方网站(包括管理后台),也因为是我第一次使 ...
- Vue.js 项目接口管理
在vue开发中,会涉及到很多接口的处理,当项目足够大时,就需要定义规范统一的接口,如何定义呢? 本文使用vue-cli生成的项目举例. 第一步.在src目录下新建一个文件夹http,在http目录下建 ...
- 【vue】---项目接口管理---【巷子】
一.前言 在vue开发中,会涉及到很多接口的处理,当项目足够大时,就需要定义规范统一的接口 假设后端的文档分成了以下几个模块 1.发现模块 2.个人信息模块 3.商品模块 4.评论模块 ...... ...
随机推荐
- POJ_1850 Code【组合的运用】
题目: Transmitting and memorizing information is a task that requires different coding systems for the ...
- JS中||的某些用法
var a = 0 ||'sda';console.log(a);//sda var a = '' ||'sda';console.log(a);//sda
- Q541 反转字符串 II
给定一个字符串和一个整数 k,你需要对从字符串开头算起的每个 2k 个字符的前k个字符进行反转.如果剩余少于 k 个字符,则将剩余的所有全部反转.如果有小于 2k 但大于或等于 k 个字符,则反转前 ...
- 什么是SocLib
一.SocLib简介 SoCLib是用于多处理器片上系统(MP-SoC)虚拟原型开发的开放平台.该项目始于ANR创建的项目, 现在维持在https://www.lip6.fr/.该平台的核心是用于虚拟 ...
- Python I/O及FIle方法
一.文件操作 文件的编码格式: ASCII与UNICODE: 计算机有256个ASCII字符(8个0/1的排列组合方式一共有256种, 2**8) UTF-8是UNICODE的一种编码格式,计算机中使 ...
- Docker容器日志查看与清理(亲测有效)
https://blog.csdn.net/yjk13703623757/article/details/80283729 1. 问题 docker容器日志导致主机磁盘空间满了.docker logs ...
- jacob自己动生成word文档目录
任务目的 1自动生成word文档目录. 用例测试操作步骤 在一个word文档的第二页填写占位符: {目录}保存.调用程序读取目标文档,自动根据标题生成目录到{目录}位置. 效果 关键代码 insert ...
- unity 移动物体到指定位置的四种方法 【精确移动到指定位置,再也不是计算距离了,物体可以高速移动】
方法1:使用Vector3.MoveTowards </pre><pre name="code" class="csharp">void ...
- java中static方法的继承性
首先需要知道的是,java中所有的public实例方法都默认是virtual的,static方法不是virtual的,所以static方法可以被覆盖(new),但不可被重写(override) 1.被 ...
- 004 java中的变量
这篇文章为你搞懂三个问题 什么是变量? 如何使用变量? 变量命名有哪些规范? 变量 计算机的内存类似于人的大脑,电脑使用内存来存储计算所需要的数据. 内存像旅馆一样,不同的房间类型对应不同的数据类型, ...