vue中axios怎么封装axios???
2020-06-06 07:45
141 查看
- 首先在创建项目的src的目录下创建http文件
- 在http文件中创建request.js,api.js俩个文件
- request=>
import axios from "axios" // 创建axios实例 const service = axios.create({ baseURL:'https://www.365msmk.com', timeout:3000 }) // 请求拦截 service.interceptors.request.use(config=>{ // config.headers['aa任意']='1234567897dsfdgfbhgjhk' console.log('请求被拦截',config) return config },error=>{ return Promise.reject('请求出错,请检查') }) // 响应拦截 service.interceptors.response.use(res=>{ // console.log('响应拦截') return res },error=>{ return Promise.reject('出错啦',error) // 接口错误走这个接口 }) export default service
- api.js=>
import request from "./request" import qs from "qs" // 封装常用得业务接口 //封装的第一个接口 export function courseClassify(){ return request({ url:"/api/app/courseClassify", method:'get' }) } //封装的第二个接口 export function courseDetail(info){ // Object.keys(info)[0]:也就是获取 basis_id const url = `/api/app/courseInfo/${Object.keys(info)[0]}=${info.basis_id}` return request({ url:url, method:'get', }) }
- 在需要用的组件中引入
eg:import {courseClassify,courseDetail} from “@/http/api” - 定义一个方法,在方法触发的时候获取数据也可以在vue函数钩子里面获取
eg:
methods:{ getData(){ // 获取courseClassify信息 courseClassify().then((res)=>{ console.log('课程信息',res) }) //获取courseDetail信息 let info = {basis_id:287} courseDetail(info).then((res)=>{ console.log('课程详情信息',res) }) } }
相关文章推荐
- 封装axios在vue-cli项目中便捷使用
- Vue中封装axios发送请求
- Vue: axios 请求封装及设置默认域名前缀 (for Vue 2.0)
- 记 Vue +axios 使用和http请求封装
- Vue二次封装axios
- vue+axios+element-ui实战(二)--axios请求封装
- Vue 折腾记 - (10) 给axios做个挺靠谱的封装(报错,鉴权,跳转,拦截,提示)
- Vue2.0 封装axios
- 实现axios的统一封装API,axios结果格式处理,vue组件的loading动画变量在axios请求的前后改变
- vue+axios方法封装(restful,ajax)
- Vue.js插件axios——封装一个可以灵活使用的ajax
- VUE 之 axios 使用方法及封装
- 在vue-cli 3.0 + 中,对 axios 的二次封装
- vue中axios,jsonp请求的封装管理
- Vue强制登录与axios封装
- Vue项目中对axios进行封装以及api接口请求
- vue实力封装axios
- vue中封装axios,设置拦截器,刷新token
- Vue 折腾记 - (10) 给axios做个挺靠谱的封装(报错,鉴权,跳转,拦截,提示)
- vue 封装axios