qs的stringify接收2个参数,第一个参数是需要序列化的对象,第二个参数是转化格式,一般默认格式是给出明确的索引,如:arr[0]=1&arr[1]=2

//indices是index的复数格式,因此indices是索引的意思

//bracket是括号的意思,因此arrayFormat:'brackets'代表数组下标为空[]

qs.stringify({ arr: [1,2,3] }, { indices: false }) //arr=1&arr=2&arr=3

qs.stringify({ arr: [1,2,3] }, { arrayFormat: 'indices' }) //arr[0]=1&arr[1]=2&arr[2]=3

qs.stringify({ arr: [1,2,3] }, { arrayFormat: 'brackets' }) //arr[]=1&arr[]=2&arr[]=3

qs.stringify({ arr: [1,2,3] }, { arrayFormat: 'repeat' }) //arr=1&arr=2&arr=3

qs的parse()使用

如果接口需要获取get请求接口的请求数据,可以使用parse(),将拼接在地址的参数数据转换为对象

let url = "111.111.3.203:8080/getList?id=1&name=huahua&arr=a&arr=b"

let splitObj = url.split('?')[1]

qs.parse(splitObj ) //{ id: '1', name: 'huahua', arr: ['a','b'] }

qs.stringify和JSON.stringify的区别

let obj = { a: 1, b: 2 }

qs.stringify(obj) //a=1&b=2

JSON.stringify(obj) // "{'a': 1, 'b': 2}"

qs解决数组参数问题

安装axios,qs

npm install qs

npm install axios -S

在main.js中引入qs

import Vue from 'vue'

import qs from 'qs'

import axios from 'axios'

Vue.prototype.$qs = qs; //qs全局挂载在vue实例上

Vue.prototype.$http = axios; //axios全局挂载在vue实例上

在组件中使用

get请求的请求参数是将数据放在config的params中,实际是通过“&”拼接在url上

如果请求参数是数组arr=[1,2,3],get请求不对数组做任何处理,则传递给后端的接口是

"url地址?arr[]=1&arr[]=2&arr[]=3",接口会报错,因为识别不了“[]”这个符号

需要对数组进行修改,需要通过qs的stringify()方法将数组序列化,则传递给后端的接口是 “url地址?arr=1&arr=2&arr=3”,接口不会报错

this.arr = [1,2,3]

//写法一,直接使用qs的stringify()

this.$http.get('url地址', {

params: {

arr: this.$qs.stringify(this.arr) //数组拼接在url地址 url地址?arr=1&arr=2&arr=3

}

}).then(() => {

})

//写法二 ,使用axios提供的paramsSerializer序列化函数

this.$http.get('url地址', {

params: {

arr: this.arr //数组拼接在url地址 url地址?arr=1&arr=2&arr=3

},

paramsSerializer: (params) => {

return this.$qs.stringify(params)

}

}).then(() => {

})

以上这篇浅谈vue中get请求解决传输数据是数组格式的问题就是小编分享给大家的全部内容了

关注微信号:javalearns   随时随地学Java

或扫一扫

随时随地学Java

java get请求 数组,浅谈vue中get请求解决传输数据是数组格式的问题相关推荐

  1. vue 给checkbox 赋值_浅谈vue中关于checkbox数据绑定v-model指令的个人理解

    vue.js为开发者提供了很多便利的指令,其中v-model用于表单的数据绑定很常见, 下面是最常见的例子: {{msg}} js里data初始化数据 new Vue({ el: "#myA ...

  2. 浅谈Vue中的虚拟DOM

    Virtual DOM 是JavaScript按照DOM的结构来创建的虚拟树型结构对象,是对DOM的抽象,比DOM更加轻量型 为啥要使用Virtual DOM 当然是前端优化方面,避免频繁操作DOM, ...

  3. php中jquery ajax请求参数,浅谈Jquery中Ajax异步请求中的async参数的作用

    之前不知道这个参数的作用,上网找了前辈的博客,在此收录到自己的博客,希望能帮到更多的朋友: test.html asy.js function testAsync{ var temp; $.ajax( ...

  4. vue 中provide的用法_[转]浅谈vue中provide和inject 用法

    provide:Object | () => Object inject:Array | { [key: string]: string | Symbol | Object } provide ...

  5. 浅谈Vue中的Prop

    Prop 基本用法 Prop的基本用法很简单,只需要在子组件的Vue实例中定义该属性并把值设为目标属性的数组即可 Vue.component('child', {...// 接收messageprop ...

  6. vue 中provide的用法_浅谈vue中provide和inject 用法

    一.概念解析 成对出现:provide和inject是成对出现的 作用:用于父组件向子孙组件传递数据 使用方法:provide在父组件中返回要传给下级的数据,inject在需要使用这个数据的子辈组件或 ...

  7. python列表和数组区别java_浅谈numpy中np.array()与np.asarray的区别以及.tolist

    array和asarray都可以将结构数据转化为ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会. 1.输入为列表时 ...

  8. 父子组建传值_浅谈Vue父子组件和非父子组件传值问题

    本文介绍了浅谈Vue父子组件和非父子组件传值问题,分享给大家,具体如下: 1.如何创建组件 1.新建一个组件,如:在goods文件夹下新建goodsList.vue goodsList组件 expor ...

  9. 浅谈Android中的MVP与动态代理的结合

    浅谈Android中的MVP与动态代理的结合 本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 在Android开发平台上接触MVP足足算起来大概已经有一个年头左右.从最开始到现在经 ...

最新文章

  1. 【转】android电池(四):电池 电量计(MAX17040)驱动分析篇
  2. mysql 分区指定路径_[数据库]MySQL 指定各分区路径
  3. Cissp-【第3章 安全工程】-2021-1-31(205页-237页)
  4. python学起来难不难-新手学python数据分析难不难?
  5. select poll epoll IO操作多路复用及猴子补丁
  6. command对象的获取 c#
  7. android仿空间photoview,PickPhotoView:一个Android照片选择器
  8. Python基础:文件的操作
  9. 【java.lang.UnsupportedClassVersionError】问题的解决方法
  10. CCNA配置试验之八 帧中继——点到点子接口(point-to-point)的配置
  11. 最近学到一些linq和面向对象的经验分享
  12. 严蔚敏数据结构之线性表的基本操作
  13. c语言中lookup函数功能,Lookup函数以及0/的用法
  14. BUU WEB [SUCTF 2019]EasyWeb
  15. 04Selenium剩余部分及练习:爬取京东商品信息
  16. 重庆金域 :新系统成功上线!重庆金域第一份新系统的报告单2017年9月21日13:00正式发出
  17. 年包150万的腾讯程序员,深圳房产一千万,同学聚会只能排名第16!
  18. 「 iOS知识小集 」2018 · 第 35 期
  19. 基于单片机电梯5层带模拟控制系统设计(毕设)
  20. 尺寸大的背光为何设计双AK级?

热门文章

  1. python3 协程运行时 如何动态增加协程_python2.7 协程,如何调度运行两个协程?...
  2. 2021年10月Python小屋编程比赛获奖名单
  3. 微课|Python列表、字典、集合、字符串对象常用方法串讲
  4. Python+sklearn决策树算法使用入门
  5. Python生成器函数案例一则:理财收益计算
  6. Python对象特殊方法及其用法演示
  7. 常用正则表达式锦集与Python中正则表达式的用法
  8. 两个线程同时从服务器接收消息_Linux高性能服务器处理框架
  9. 微赞dataconfig.php,PHP标准化之路(一):使用 EditorConfig 实现语法统一
  10. 用鼠标在窗口中画方形的程序------基于OpenCV+VS