vue中在与后端进行数据交互时,有时会出现需要传递数组的情况

传递数组时参数不做配置的情况下路径会变成:/list?ids[]=1&ids[]=2&ids[]=3 对于后端来说,ids[]形式的提交是无效的,实际需要的是/list?ids=1&ids=2&ids=3这种形式。那么我们就需要做一些处理来使后端可以准确的拿取到数据

 qs插件

qs 可以通过arrayFormat 选项进行格式化输出

qs主要是增加一些安全性的查询字符串解析和序列化字符串的库

1、qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'indices' })
// 输出结果:'a[0]=b&a[1]=c'
2、qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'brackets' })
// 输出结果:'a[]=b&a[]=c'
3、qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'repeat' })
// 输出结果:'a=b&a=c'
4、qs.stringify({ a: ['b', 'c'] }, { arrayFormat: 'comma' })
// 输出结果:'a=b,c'

这个处理方式可以写在axios请求拦截器中,也可以单独写在某个文件中,,使用时记得要引入qs插件

如果不借用qs插件,那就需要自己处理,参数进行拼接

GitHub 加速计划 / vu / vue
207.54 K
33.66 K
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:2 个月前 )
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 4 个月前
e428d891 Updated Browser Compatibility reference. The previous currently returns HTTP 404. 5 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐