npm install axios -S

目录

ajax.js   请求工具

/*
ajax请求函数模块
返回值: promise对象(异步返回的数据是: response.data)
*/
import axios from "axios";
import da from 'element-ui/src/locale/lang/da'
export default function ajax (url, data={}, type='GET',headers={}) { return new Promise(function (resolve, reject) {
// headers["Aauthorized"]= "xxxx"
const user_headers = {headers: headers};
// 执行异步ajax请求
let promise
if (type === 'GET')
{// 发送get请求
// 准备url query参数数据
let dataStr = '' //数据拼接字符串
Object.keys(data).forEach(key => {
dataStr += key + '=' + data[key] + '&'
})
if (dataStr !== '') {
dataStr = dataStr.substring(0, dataStr.lastIndexOf('&'))
url = url + '?' + dataStr
}
promise = axios.get(url=url,headers=user_headers)
} else if(type === 'POST')
{
// 发送POST请求
promise = axios.post(url=url, data=data,headers=user_headers)
}else //FORM
{
promise = axios.postForm(url=url,data=data,headers=headers)
}
promise.then(function (response) {
// 成功了调用resolve()
// resolve(response.data)
resolve(response)
}).catch(function (error) {
//失败了调用reject()
reject(error)
})
})
} /**
import {queryData} from '../api/index.js'
import ajax from './ajax'
export const queryData = () => ajax(url=`${BASE_URL}/sea/category/queryWithPage`,data={},type="POST",headers={"xx":"XXXXXXXX","sea":"SEAAAAAA"}) use:
methods: {
handleClick(row) {
console.log(row);
}, async findData(){
const result = await queryData()
console.log(result.data)
this.xx=result.data
return result.data
}
} */

index.js  定义API

 */
import ajax from './ajax'
const BASE_URL = '/api' export const queryData = () => ajax(url=`${BASE_URL}/sea/category/queryWithPage`,{},type="POST",headers={"my_header":"XXXXXXXX","sea":"SEAAAAAA"})

使用:

  import {queryData} from '../api/index.js'
export default {
name: 'About',
methods: {
handleClick(row) {
console.log(row);
}, async findData(){
const result = await queryData()
console.log(result.data)
this.xx=result.data
return result.data
}
}

:

axios utils axios.postForm的更多相关文章

  1. vue中使用axios与axios的请求响应拦截

    VUE中使用Axios axios的安装 npm install axios vue-axios axios在vue的配置与使用 在main.js中引入axios和vue-axios import a ...

  2. Axios 类似于for循环发送批量请求{:axios.all axios.spread}。

    Axios的请求都是异步的!不能用for循环遍历去批量发送请求 那如果我们需要类似与这样的请求怎么办呢 for(let i =0;i<array.length;i++){ axios.post( ...

  3. axios源码解析 - 请求方法的别名实现

    axios中的创建请求方式很多,比如axios(url),axios.get(url),axios.post(url),axios.delete(url),方便快捷的api设计让axios火得一塌糊涂 ...

  4. axios封装

    前言 作为出入vue的小萌新,我在写请求的时候,也是毫不犹豫写了ajax,结果肯定是不行的... Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2. ...

  5. AXIOS源代码重点难点分析

    摘要 vue使用axios进行http通讯,类似jquery/ajax的作用,类似angular http的作用,axios功能强大,使用方便,是一个优秀的http软件,本文旨在分享axios源代码重 ...

  6. Axios源码深度剖析 - 替代$.ajax,成为xhr的新霸主

    前戏 在正式开始axios讲解前,让我们先想想,如何对现有的$.ajax进行简单的封装,就可以直接使用原声Promise了? let axios = function(config){ return ...

  7. axios 封装

    来自:https://www.jianshu.com/p/68d81da4e1ad 侵删 import axios from 'axios' import qs from 'qs' let baseu ...

  8. 封装axios

    import axios from 'axios' // import store from '@/vuex/store.js' import router from '../router' impo ...

  9. vue项目实践-添加axios封装api请求

    安装 axios npm install axios --save 创建实例 (utils/fetch.js) axios 默认提交格式为:application/json 可使用 qs 模块(需要安 ...

  10. 使用axios post 提交数据,后台获取不到

    https://www.cnblogs.com/yiyi17/p/9409249.html(copy https://www.cnblogs.com/loveyaxin/p/8385694.html( ...

随机推荐

  1. go 镜像输出一个树 mac模式

    递归写的很low,mac模式 package main import "fmt" type TreeNode struct { Value int Left *TreeNode r ...

  2. 【批处理】启动 VMware 服务的简单批处理脚本

    早些时候编写的一个启动VMware服务的简单批处理脚本. 主要是记录一下自动提升运行权限的命令,不用再右键"以管理员身份运行". @echo off mode con cols=9 ...

  3. OpenStack 虚拟机制作qcow2格式镜像

    虚拟机拍摄快照导出1.将虚拟机制作成镜像(即拍摄快照):2.利用该虚机的快照,创建一个快照卷,大小是根据快照的大小自动设置的:3.利用命令将快照卷 upload-to-image 到虚机的快照内 ci ...

  4. 宽字符集(unicode)操作函数 (转)

    字符分类: 宽字符函数 普通C函数 描述 iswalnum() isalnum() 测试字符是否为数字或字母 iswalpha() isalpha() 测试字符是否是字母 iswcntrl() isc ...

  5. Stream操作

    public static void main(String[] args) { List<Parking> parkings = Arrays.asList(Parking.builde ...

  6. Django基础篇 06-Django模板过滤器Filter和标签Tags

    一.Django模板的内置过滤器Filter 什么是模板(Template)? Django的Template是如何工作的 Django的模板是静态的html文件,它只决定了一个页面的样式或外观.它需 ...

  7. jmeter在Linux上的安装及压力机配置

    1.jmeter安装 (1)与控制机相同版本的java环境.安装包及插件: (2)关闭控制机上的防火墙: (3)保证机器在同一个局域网中(能ping通): (4)解压安装包,设置JMETER_HOME ...

  8. wavesurfer音波插件之播放指定语音片段

    使用wavesurfer音波插件时,可能会用到这么一个功能,点击音转文后的某一句文字,则需要在音波条上进行播放这一段录音,恰好wavesurfer插件自带这么一个功能,直接上代码: <scrip ...

  9. PTA1001 害死人不偿命的(3n+1)猜想 (15 分)

    1001 害死人不偿命的(3n+1)猜想 (15 分) 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 (3n+1) 砍掉一半.这样一直反复 ...

  10. PLC入门笔记11

    1.开关? 输入 拨杆开关.点动开关.常开.常闭开关 霍尔接近开关(磁场 N极导通 3线+-DC24V ).电容接近开关(非金属).电感接近开关(金属) 2.输入接线? NPN型,不需要外接电源,直接 ...