在我们调用接口的时候,可能会看到在接口参数中的 key 后面有 [],一般出现这种情况大多数为给后端传递 数组参数 而产生的,这时我们前端就需要在调用接口的时候对传递参数做一些处理。
通过 npm install qs --save
安装 qs
帮助我们去除参数中的 []。
在 main.js 中引用:
import qs from 'qs';
Vue.prototype.$qs=qs;
在调用 axios 请求的时候在 config 中加上:
let areaRes = await this.$axios({
method: 'post',
url: this.$urls.baseUrl + 'pm-gis/route/insertRepairArea',
// 加上这一句代码
paramsSerializer:params => {
return this.$qs.stringify(params,{indices:false})
},
params: {
deviceIds: this.addTimingForm.name,
lineIds: this.addTimingForm.line,
taskName: this.addTimingForm.taskName
}
})
如果上面没有用,则换成:
paramsSerializer:params => {
return this.$qs.stringify(params,{arrayFormat: 'repeat'})
}