vue-cli 引入、配置axios的方法


Posted in Javascript onMay 08, 2018

一、npm 安装axios,文件根目录下安装,指令如下

npm install axios --save-dev 

二、修改原型链,在main.js中引入axios

import axios from 'axios' 

接着将axios改写为Vue的原型属性,

Vue.prototype.$http=axios 

这样之后就可在每个组件的methods中调用$http命令完成数据请求

三、在组件中使用

methods: { 
   get(){ 
    this.$http({ 
     method:'get', 
     url:'/url', 
     data:{} 
    }).then(function(res){ 
     console.log(res) 
    }).catch(function(err){ 
     console.log(err) 
    }) 
     
    this.$http.get('/url').then(function(res){ 
     console.log(res) 
    }).catch(function(err){ 
     console.log(err) 
    }) 
   }    
}

有关axios的配置请参考如下文档,点击打开链接

下面给大家介绍下vue-cli配置axios的方法

1.

npm install axios --save

2.

npm install @type/axios --save-dev(使用ts编写的需要此声明文件,升级的axios好像不需要了,已经自带)

3.

在src目录下添加axios.ts文件,内容:

import axios from 'axios'
import {Notification} from 'element-ui'
import store from './store/index'
import buildconf from '../config/build.rootpath.js'
axios.defaults.withCredentials = true;
axios.defaults.baseURL = buildconf.serverUrl
// axios.defaults.baseURL = 'http://gsblackwidow.chinacloudsites.cn/'
axios.interceptors.request.use(function(config) {
 // document.getElementById('g-loader').style.display = 'flex'
 store.commit('requestModify', 1)
 return config;
}, function(error){
 return Promise.reject(error)
})
axios.interceptors.response.use(function(response){
 store.commit('requestModify', -1)
 // document.getElementById('g-loader').style.display = 'none' 
 return response.data;
}, function(error){
 store.commit('requestModify', -1) 
 // document.getElementById('g-loader').style.display = 'none'  
 if(error.response.status === 401){
  Notification({
   title: '权限无效',
   message: '您的用户信息已经失效, 请重新登录',
   type: 'warning',
   offset: 48
  });
  window.location.href = '/#/login'
 }else{
  Notification({
   title: '请求错误',
   message: `${error.response.status} \n ${error.config.url}`,
   type: 'error',
   offset: 48,
  })
 }
 return Promise.reject(error)
})
export default axios

4.

types文件夹中新建vue.d.ts文件,内容:

import {AxiosStatic, AxiosInstance } from 'axios'
declare module 'vue/types/vue' {
 interface Vue {
  $axios: AxiosStatic;
 }
}

这样就可以在各个模块中通过this.$axios来使用axios了

其中axios中:

1. build.rootpath.js内容:

var path = require('path')
var rootpath = path.resolve(__dirname, '../dist')
module.exports = rootpath

2. store是vuex的文件,所以要事先安装vuex

总结

以上所述是小编给大家介绍的vue-cli 引入、配置axios的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
javascript字符串替换及字符串分割示例代码
Dec 12 Javascript
javascript跨域的4种方法和原理详解
Apr 08 Javascript
JavaScript实现三阶幻方算法谜题解答
Dec 29 Javascript
js实现分割上传大文件
Mar 09 Javascript
jQuery插件ajaxFileUpload异步上传文件
Oct 19 Javascript
使用vue构建一个上传图片表单
Jul 04 Javascript
php register_shutdown_function函数详解
Jul 23 Javascript
解决webpack无法通过IP地址访问localhost的问题
Feb 22 Javascript
vue element项目引入icon图标的方法
Jun 06 Javascript
jQuery+ajax实现批量删除功能完整示例
Jun 06 jQuery
JS开发常用工具函数(小结)
Jul 04 Javascript
vue iview 隐藏Table组件里的某一列操作
Nov 13 Javascript
vue axios 给生产环境和发布环境配置不同的接口地址(推荐)
May 08 #Javascript
JavaScript实现计算圆周率到小数点后100位的方法示例
May 08 #Javascript
Vue.js 实现微信公众号菜单编辑器功能(二)
May 08 #Javascript
详解基于mpvue的小程序markdown适配解决方案
May 08 #Javascript
Vue.js 实现微信公众号菜单编辑器功能(一)
May 08 #Javascript
浅谈React 服务器端渲染的使用
May 08 #Javascript
vue.js做一个简单的编辑菜谱功能
May 08 #Javascript
You might like
十天学会php之第八天
2006/10/09 PHP
从C/C++迁移到PHP——判断字符类型的函数
2006/10/09 PHP
PHP 在线翻译函数代码
2009/05/07 PHP
Mysql的Root密码忘记,查看或修改的解决方法(图文介绍)
2013/06/14 PHP
Zend Framework教程之模型Model用法简单实例
2016/03/04 PHP
jquery实现漂浮在网页右侧的qq在线客服插件示例
2013/05/13 Javascript
javascript通过className来获取元素的简单示例代码
2014/01/10 Javascript
NodeJS Web应用监听sock文件实例
2015/02/18 NodeJs
javascript实现C语言经典程序题
2015/11/29 Javascript
javascript实现下拉提示选择框
2015/12/29 Javascript
JavaScript弹窗基础篇
2016/04/27 Javascript
JS实现的文件拖拽上传功能示例
2018/05/21 Javascript
详解如何在你的Vue项目配置vux
2018/06/04 Javascript
Vue实现一个无限加载列表功能
2018/11/13 Javascript
vue图片上传本地预览组件使用详解
2019/02/20 Javascript
Vue动态组件和异步组件原理详解
2019/05/06 Javascript
js实现转动骰子模型
2019/10/24 Javascript
微信小程序实现一个简单swiper代码实例
2019/12/30 Javascript
基于canvasJS在PHP中制作动态图表
2020/05/30 Javascript
详解js中的原型,原型对象,原型链
2020/07/16 Javascript
Python实现将不规范的英文名字首字母大写
2016/11/15 Python
python批量复制图片到另一个文件夹
2018/09/17 Python
python 常见字符串与函数的用法详解
2018/11/23 Python
python定时检测无响应进程并重启的实例代码
2019/04/22 Python
Django Rest framework权限的详细用法
2019/07/25 Python
西尔斯百货官网:Sears
2016/09/06 全球购物
Vero Moda西班牙官方购物网站:丹麦BESTSELLER旗下知名女装品牌
2018/04/27 全球购物
C语言怎样定义和声明全局变量和函数最好
2013/11/26 面试题
公司采购主管岗位职责
2014/06/17 职场文书
工程索赔意向书
2014/08/30 职场文书
民主生活会对照检查材料思想汇报
2014/09/27 职场文书
井冈山红色之旅感想
2014/10/07 职场文书
2014年学生会工作总结范文
2014/11/07 职场文书
工地材料员岗位职责
2015/04/11 职场文书
单位同意报考证明
2015/06/17 职场文书
python 多态 协议 鸭子类型详解
2021/11/27 Python