在我们调用接口的时候,可能会看到在接口参数中的 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'})
}
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐