JS最新技术ES6,结合Vue全局注册,实现Axios封装配置插件!

摘要:
接下来,我们将介绍新的js技术ES6,它结合了Vueinstall全局组件来实现Axios封装,并以代码形式对其进行解释。

接下来,带来js全新技术ES6,结合Vue install全局组件实现Axios封装,以代码形式讲解。

1、请求封装

//file:src/api/http/http.js

import axios from 'axios'
axios.create();
axios.interceptors.request.use((config)=>{  //axios请求拦截
    return config;  //记得return请求
})
axios.interceptors.response.use((response)=>{
    return response;
})
class http{
    static async get(url,params,contentType="application/x-www-form-urlencoded"){
       return await axios.get(url,{
           params,
           headers:{
               "Content-Type":contentType
           }
       })
    }
    static async post(url,params,contentType="application/x-www-form-urlencoded"){
        return await axios.post(url,params,{
            headers:{
                "Content-Type":contentType
            }
        })
    }
}
export default http

2、引入封装的http.js

//file: src/api/http/login.js

import http from './http'
export const login=(params)=>http.get("api/course",params)

3、将所有封装的请求封装进一个js文件

//file : src/api/http/index.js
import {login} from './login'

export default {
    login
}

4、实现vue全局注册组件

//file : src/api/index.js
import api from './http'
const install=(vue)=>{
    if(install.installed){
        return;
    }
    vue.prototype.$api=api;

}
export default install

5、main.js使用(作者配置webpack别名,可以直接引入)

// file : main.js
import api from 'api/index'
Vue.use(api);

接下来,就可以在页面中使用this.$api.login等进行请求了哦,ES6最大的特点是方便、简介,笔者建议大家温故知新,循序渐进!

免责声明:文章转载自《JS最新技术ES6,结合Vue全局注册,实现Axios封装配置插件!》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇filebeat v6.3 如何增加ip 字段轻松简单搭建Linux下的C#开发环境<转>下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

js获取iframe的parent对象

使用谷歌浏览器调试代码时无意间发现了一个奇特的问题:从iframe页面调用父级页面的方法,window.parent.text(),出现 Blocked a frame with origin "null" from accessing a frame with origin "null". Protocols, domains, and ports mu...

vue组件化开发

1、组件化开发1.1 组件[component] 组件(Component)是自定义封装代码的功能。在前端开发过程中,经常出现多个网页的功能是重复的,而且很多不同的页面之间,也存在同样的功能。 而在网页中实现一个功能,需要使用html定义功能的内容结构,使用css声明功能的外观样式,还要使用js来定义功能的特效,因此就产生了把一个功能相关的[HTML、cs...

Vue组件之全局组件与局部组件

组件 (Component) 是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装可重用的代码。在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能。在有些情况下,组件也可以是原生 HTML 元素的形式,以 is 特性扩展。个人认为就是一个可以重复利用的结构层代码片段。 全局组件注册方式:Vue.component(组件...

[网络收集]Form表单及网站开发中常用js表单取值方法

Form 表单:一个页面只能有一个 runat=“server”不是必须的,加上后,会在输出的源代码里多了一行 <input type="hidden" name="__VIEWSTATE" value="/wEPDwUJNzgzNDMwNTMzZGR/8ZxOm5Tn0sfHNJaqE12hKqqJTQ==" /> 嘿,这不就是传说中的v...

vue项目准备工作(一)

1.写文档: 产品说明、工作日志、接口说明文档、数据库说明文档、项目架构说明文档等···· 例如:后台管理系统:商品的管理、店铺的管理、店铺类别管理、管理员的管理、用户管理等·····     前端渲染。前端站点、首页,用户界面。搜索。类别。详情。api:接口。 2.vue脚手架 1. 全局安装vue的脚手架 cnpm install @vu...

vue常见依赖安装

1):$ npm install less less-loader --save 2)style里 <style lang='less'> 2): $ npm i vue-resource --save import VueResource from 'vue-resource' Vue.use(VueResource); 就是这么简单...