1 创建一个vue的项目

使用命令 vue create axios-vue 创建,可以什么都不用勾选

2 安装axios

npm install axios --save

如果安装过程很慢的话,也可以使用下面的cnpm

npm install cnpm -g --registry=https://registry.npm.taobao.org
cnpm install axios --save

3 创建封装请求的文件夹

用vue插件的方式封装,而不是使用工具类进行封装。

这样方便使用,只需要在 main.js 引入一次就可以在所有vue组件中使用。

src 下面创建 plugin 文件夹,并在里面创建 http.js

http.js内容如下:

/**
* axios vue插件
*/ import axios from 'axios'; const MyAxiosHttp = {}; const axios_instance = axios.create({
baseURL: 'http://127.0.0.1:8866/',
timeout: 5000
}); MyAxiosHttp.install = (Vue) => { /**
* 添加get方法 这个方法我写的比较简单,可以按照你们的需求完善
* 返回一个Promise
* 并将错误信息全部转换成字符串
* @param {*} path
* @param {*} params
*/
Vue.prototype.$get = (path, params) => {
return new Promise((resolve, reject) => {
axios_instance.get(path, {
params: params
}).then(res => {
resolve(res.data);
}).catch(err => {
reject('服务器异常');
});
});
}
}; export default MyAxiosHttp;

4 如何使用

main.js 中引入

import Vue from 'vue'
import App from './App.vue' // 下面这两行
import MyAxiosHttp from '@/plugin/http.js';
Vue.use(MyAxiosHttp); Vue.config.productionTip = false new Vue({
render: h => h(App),
}).$mount('#app')

在vue组件中使用

export default {
name: 'App',
components: {
},
beforeMount() {
this.$get('user/findById', {
id: 1
}).then(res => {
console.log(res);
});
},
}

Vue整合axios 插件方式的更多相关文章

  1. vue全局使用axios插件请求ajax

    vue全局使用axios插件请求ajax Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方宣布停止更新vue-resource,并推 ...

  2. vue路由的跳转-路由传参-cookies插件-axios插件-跨域问题-element-ui插件

    ---恢复内容开始--- 项目初始化 创建一个纯净的vue环境项目,手动书写全局的样式配置,全局的main,js配置 (1)如果vue项目在重构或者出错的时候,手动安装node_modules. 如果 ...

  3. vue中axios 配置请求拦截功能 及请求方式如何封装

    main.js 中: import axios from '................/axios' axios.js 中: //axios.js import Vue from 'vue' i ...

  4. vue 使用axios 数据请求第三方插件的使用

    axios 基于http客户端的promise,面向浏览器和nodejs 特色 浏览器端发起XMLHttpRequests请求 node端发起http请求 支持Promise API 监听请求和返回 ...

  5. vue中axios使用二:axios以post,get,jsonp的方式请求后台数据

    本文为博主原创,转载请注明出处 axios在上一篇中讲过:vue中axios使用一:axios做拦截器,axios是请求后台资源的模块,用来请求后台资源. axios本身是支持get,post请求后台 ...

  6. Vue 中使用 TypeScript axios 使用方式

    Vue 中使用 TypeScript axios 使用方式 方式一 import axios from 'axios'; Vue.prototype.$axios = axios; // 在 .vue ...

  7. vue+vuex+axios+echarts画一个动态更新的中国地图

    一. 生成项目及安装插件 # 安装vue-cli npm install vue-cli -g # 初始化项目 vue init webpack china-map # 切到目录下 cd china- ...

  8. vue.js 三种方式安装--npm安装

    Vue.js是一个构建数据驱动的 web 界面的渐进式框架.     Vue.js 的目标是通过简单的 API 实现响应的数据绑定和组合的视图组件.它不仅易上手,便于与第三方库或既有项目整合.     ...

  9. Vue项目功能插件

    项目功能插件 vue-router { path: '/', name: 'home', // 路由的重定向 redirect: '/home' } { // 一级路由, 在根组件中被渲染, 替换根组 ...

随机推荐

  1. Net6 Configuration & Options 源码分析 Part1

    Net6 Configuration & Options 源码分析 Part1 在Net6中配置系统一共由两个部分组成Options 模型与配置系统.它们是两个完全独立的系统. 第一部分主要记 ...

  2. Linux 常用管理命令

    系统 # uname -a # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # ho ...

  3. 可移植的python环境

    创建可移植的python环境 工作时使用的系统不联网,而且自带的python环境库不完整,每次干活都心累,所以想要做一个可移植的精简版的python环境. 开始前的准备: Ubuntu18.04 py ...

  4. TLS 1.0 至 1.3 握手流程详解

    概述 TLS 全称为 Transport Layer Security(传输层安全),其前身是 SSL,全称为 Secure Sockets Layer(安全套接字层),它的作用是为上层的应用协议提供 ...

  5. spring——通过注解显式的完成自动装配

    构建bean文件: public class People { private String name = "小明"; } 编写配置类: @Configuration @Impor ...

  6. 4月4日 python学习总结 os pickle logging

    1.序列化和反序列化 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化,在Python中叫pickling. 反过来,把变量内容从序列化的对象重新读到内存里称之为反序列化,即unpickl ...

  7. 【文件系统】dumpe2fs命令

    dumpe2fs - dump ext2/ext3/ext4 filesystem information dumpe2fs prints the super block and blocks gro ...

  8. pip安装使用国内源的两种方法

    pip安装后使用pip安装第三方库默认是国外源,一般安装慢连接不稳定,等得花儿都谢了,结果还告诉你安装失败..../(ㄒoㄒ)/~~ 这时我们就要想想其它办法啦,毕竟不能强求 国外不行,就只有国内了赛 ...

  9. CVE-2017-12615漏洞复现附EXP

    CVE-2017-12615复现 0x00 漏洞介绍 漏洞编号: CVE-2017-12615 CVE-2017-12616 漏洞名称: CVE-2017-12615-远程代码执行漏洞 CVE-201 ...

  10. Golang中常用的代码优化点

    Golang中常用的代码优化点 大家好,我是轩脉刃. 这篇想和大家聊一聊golang的常用代码写法.在golang中,如果大家不断在一线写代码,一定多多少少会有一些些代码的套路和经验.这些经验是代表你 ...