国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

詳解vue中axios的封裝

2019-11-19 13:28:28
字體:
來源:轉載
供稿:網友

第一步還是先下載axios

cnpm install axios -S

第二步建立一個htttp.js

import axios from 'axios';import { Message } from 'element-ui';axios.defaults.timeout = 5000;axios.defaults.baseURL ='';//http request 攔截器axios.interceptors.request.use( config => {  // const token = getCookie('名稱');注意使用的時候需要引入cookie方法,推薦js-cookie  config.data = JSON.stringify(config.data);  config.headers = {   'Content-Type':'application/x-www-form-urlencoded'  }  // if(token){  //  config.params = {'token':token}  // }  return config; }, error => {  return Promise.reject(err); });//http response 攔截器axios.interceptors.response.use( response => {  if(response.data.errCode ==2){   router.push({    path:"/login",    querry:{redirect:router.currentRoute.fullPath}//從哪個頁面跳轉   })  }  return response; }, error => {  return Promise.reject(error) })/** * 封裝get方法 * @param url * @param data * @returns {Promise} */export function fetch(url,params={}){ return new Promise((resolve,reject) => {  axios.get(url,{   params:params  })  .then(response => {   resolve(response.data);  })  .catch(err => {   reject(err)  }) })}/** * 封裝post請求 * @param url * @param data * @returns {Promise} */ export function post(url,data = {}){  return new Promise((resolve,reject) => {   axios.post(url,data)     .then(response => {      resolve(response.data);     },err => {      reject(err)     })  }) } /** * 封裝patch請求 * @param url * @param data * @returns {Promise} */export function patch(url,data = {}){ return new Promise((resolve,reject) => {  axios.patch(url,data)     .then(response => {      resolve(response.data);     },err => {      reject(err)     }) })} /** * 封裝put請求 * @param url * @param data * @returns {Promise} */export function put(url,data = {}){ return new Promise((resolve,reject) => {  axios.put(url,data)     .then(response => {      resolve(response.data);     },err => {      reject(err)     }) })}

第三步

在main.js中引入

import axios from 'axios'import {post,fetch,patch,put} from './utils/http'//定義全局變量Vue.prototype.$post=post;Vue.prototype.$fetch=fetch;Vue.prototype.$patch=patch;Vue.prototype.$put=put;

最后在組件里直接使用

mounted(){  this.$fetch('/api/v2/movie/top250')   .then((response) => {    console.log(response)   }) },其余的方法一樣

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 榆林市| 会同县| 乳山市| 澄迈县| 乐平市| 皮山县| 双柏县| 左贡县| 红桥区| 桐城市| 安吉县| 汝阳县| 上栗县| 松桃| 巴里| 长垣县| 巴马| 萨迦县| 玛沁县| 巢湖市| 安国市| 浏阳市| 元阳县| 镇康县| 灵武市| 肥乡县| 侯马市| 德惠市| 喀喇沁旗| 澜沧| 库伦旗| 平定县| 黑河市| 霞浦县| 肥西县| 固安县| 石狮市| 嘉禾县| 正安县| 阜城县| 永寿县|