vue中get请求传输数据中数组格式问题

问题:请求参数arr=[1,2,3],则url里面显示“url地址?arr[]=1&arr[]=2&arr[]=3”,这样调用接口的时候后台可能不识别 "[]", 这里需要把 "[]" 给去掉

解决方法:

 安装qs,并引用

npm install qs
import qs from 'qs'
使用qs进行字符串序列化默认格式如下:
    qs.stringify({ a: ['b', 'c', 'd'] });
    // 'a[0]=b&a[1]=c&a[2]=d'
我们可以通过设置 indices 为false实现以下效果
    qs.stringify({ a: ['b', 'c', 'd'] }, { indices: false });
    // 'a=b&a=c&a=d'
也可以使用arrayformat选项输出 指定数组的格式
    qs.stringify({ id: ['b', 'c'] }, { arrayFormat: 'indices' })
    // 'id[0]=b&id[1]=c'
    qs.stringify({ id: ['b', 'c'] }, { arrayFormat: 'brackets' })
    // 'id[]=b&id[]=c'
    qs.stringify({ id: ['b', 'c'] }, { arrayFormat: 'repeat' })
    // 'id=b&id=c'

 

                 

posted @ 2020-06-20 10:15  無厌  阅读(1574)  评论(0)    收藏  举报