vue axios 封装 全局使用

【不墨迹直接上码系列】

代码分三步:

  1. 创建一个api.js,封装axios

  2. 在main.js引入,并加到vue原型上

  3. 全局使用



  1. 创建+封装

//api.js
import axios from "axios";

var apiUrl = ‘‘;
function yuanAjax(url,data,successCallback,errorCallback) {
    axios.post(apiUrl + url,data).then(function (res) {
        if( typeof  successCallback == ‘function‘) {
            successCallback(res);
        }
    })
    .catch(function (res) {
        if (errorCallback) {
            errorCallback(res);
        }
    })
}

export {
    yuanAjax
}

 2.引入+添加到原型

 

import Vue from ‘vue‘
import App from ‘./App‘
import router from ‘./router‘
//引入
import {yuanAjax} from ‘./api‘

import ElementUI from ‘element-ui‘;
import ‘element-ui/lib/theme-chalk/index.css‘;
import ‘@/assets/css/common.css‘;
import ‘@/assets/css/font-awesome.min.css‘;

Vue.use(ElementUI);
Vue.config.productionTip = false;
//添加到原型
Vue.prototype.yuanAjax = yuanAjax;

new Vue({
  el: ‘#app‘,
  router,
  components: { App },
  template: ‘<App/>‘
})

3. 使用

//使用
this.yuanAjax(‘/test‘,{
          a:1
},function (res) {
  console.log(res);
})

简单了点,适用着急的项目, 哈哈

原文地址:https://www.cnblogs.com/shouhe/p/9441883.html

时间: 2024-09-29 20:46:41

vue axios 封装 全局使用的相关文章

vue axios 封装

import Cookies from 'js-cookies'; import axios from 'axios'; /** * 封装,拦截 */ axios.defaults.baseURL = 'https://api.example.com'; axios.defaults.headers['token'] = 'token'; axios.defaults.headers.post['Content-Type'] = 'application/json'; const Axios =

vue Axios 封装与配置项

import axios from "axios"; import qs from "qs"; import { Message } from "element-ui"; import router from "../router"; const Axios = axios.create({ baseURL: "/", // 因为我本地做了反向代理 timeout: 10000, responseType:

vue axios封装以及API统一管理

在vue项目中,每次和后台交互的时候,经常用到的就是axios请求数据,它是基于promise的http库,可运行在浏览器端和node.js中.当项目越来越大的时候,接口的请求也会越来越多,怎么去管理这些接口?多人合作怎么处理?只有合理的规划,才能方便往后的维护以及修改, 安装 安装axios依赖包 cnpm install axios --save 引入 一般会我会在项目src中新建一个untils目录,其中base用于管理接口域名,http处理请求拦截和响应拦截,user.js负责接口文件(

vue axios+element 全局的loading

当发请求时,为了防止用户误操作.所以需要添加loading遮罩层. 基于vue+element_axios.用element-ui 的loading 如果想用iview的或者mint-ui 请自行更换. 在main.js中添加axios请求拦截器 import Vue from 'vue' import axios from 'axios'Vue.prototype.$http = axios; import ElementUI from 'element-ui'Vue.use(ElementU

vue axios封装

import axios from 'axios'import QS from 'qs'// import statuscode from './status_code' // 创建一个axios实例let server = axios.create({ baseURL: 'http://127.0.0.1:5000/', // 请求url timeout: 3000, // 超时处理 withCredentials: false // 是否跨域})axios.defaults.withCred

解决react项目中跨域和axios封装使用

最新几天学了一下react,发现了几个问题,估计新入坑的同学们也会遇到,下面我先列出来几点 1.请求跨域问题 2.如何发起请求 3.axios的简单封装 全局安装create-react-app脚手架,帮助我们新建react项目 npm install -g create-react-app 然后创建react项目 create-react-app xxx项目名 然后安装依赖,并且运行react项目 安装 npm install 运行 npm start 首先我们解决跨域的问题 打开项目生成的p

vue+axios+elementUI文件上传与下载

vue+axios+elementUI文件上传与下载 Simple_Learn 关注 0.5 2018.05.30 10:20 字数 209 阅读 15111评论 4喜欢 6 1.文件上传 这里主要介绍一种,elementUI官网 上传组件 http-request 这种属性的使用. 图片.png 代码如下: <el-upload class="uploadfile" action="" :http-request='uploadFileMethod' :sh

Vue axios简单使用

Vue axios简单使用的简单使用 安装: npm install axios -D 有一个问题:我明明配置了全局可是用的时候还是得一个一个引入axios( 我也不知道为什么 ) main.js中引入axios 配置全局我这里是设置了代理 import axios from "axios"; Vue.prototype.$ajax = axios;//给他原型加一个属性为$ajax axios.defaults.baseURL = "/api"; api文件中放的

vue+axios通过formdata提交参数和上传文件

demo.vue 文件 <template> <div class="demo"> <input v-model="importForm.month" type="text" name="month"/> <input ref="importFile" type="file" name="importFile" @change