美文网首页
vue配置开发环境和生产环境(axios)

vue配置开发环境和生产环境(axios)

作者: 叁乘拾的捌次方 | 来源:发表于2019-10-30 18:54 被阅读0次

vue-cli版本2.9.6

一 配置开发环境

一般情况下开发环境是会跨域的,所以我们只需要在跨域的位置配置即可。
进入config/index.js,在proxyTable对象里面添加代码,如下图

//方便复制
'/api': {
  target: 'http://10.1.7.144:8082/',   //这里填自己的接口地址
  changeOrigin: true,
  pathRewrite: {
    '^/api': '/'
  }
}
config/index.js

二 配置生产环境

进入config/prod.env.js,添加属性BASE_API为自己的生产环境地址即可,如下图


config/prod.env.js

三 调后台接口的方法(axios)

假设我们要接口的地址是:http://10.1.7.144:8082/mall/userinfo/delete

  • 其中http://10.1.7.144:8082/我们已经在一二步骤中配置好了
  • /mall是项目的前缀,相当于说每个接口都会有/mall
  • /userinfo/delete是具体接口名称(路径)

1. 接着要封装get与post方法,新建一个文件request.js

// request.js
import axios from "axios";
import qs from "qs";

//定义方法
export function post(url, params){
    const basePath=process.env.NODE_ENV=="development" ? "/api/mall" : "/mall";
    return axios.post(basePath+url, qs.stringify(params)); //如果不需要转json的话,那么第二次参数就是params
}
export function get(url,params){
    let basePath=process.env.NODE_ENV=="development" ? "/api/mall" : "/mall";
    return axios.get(basePath+url, { params });
}

2. 为了能在全局使用,在main.js中挂载到全局变量

// main.js
import {get, post} from "./request.js";
Vue.prototype.$get=get;
Vue.prototype.$post=post;

3. 方法调用

//任意文件调用
//使用,以post为例,get一样
this.$post("/userinfo/delete", {
    //这里面是要传的数据
}).then(res=>{
    console.log("成功");
    console.log(res.data);
}).catch(res=>{
    console.log("失败");
    console.log(res);
});

相关文章

网友评论

      本文标题:vue配置开发环境和生产环境(axios)

      本文链接:https://www.haomeiwen.com/subject/tycavctx.html