Vue中get/delete传递数组参数的方法可以采用qs库的字符串化方法或者ES6的数组API来实现。下面分别介绍两种方法的具体实现过程。
1. qs库的字符串化方法
可以通过qs库中的qs.stringify()
方法将参数对象的数组属性字符串化为请求参数,或者使用qs.parse()
方法将参数字符串化解析为对象。比如,我们有这样的请求参数数据:
{
ids: [1, 3, 5]
}
使用qs库的stringify()
方法,可以将其字符串化为ids=1&ids=3&ids=5
,然后将该字符串作为请求参数传递给GET或DELETE方法:
import qs from 'qs';
axios.get('/api/getData?' + qs.stringify({ ids: [1, 3, 5] }))
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
通过以上方式请求数据时,服务端会将请求参数按照参数名分组形成数组,例如上面的示例会在服务端收到的请求参数中得到一个名为ids的数组,其值为[1, 3, 5]。同样的,可以使用相同的方式请求删除数据:
axios.delete('/api/deleteData?' + qs.stringify({ ids: [1, 3, 5] }))
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
2. ES6数组API
使用ES6的数组API可以通过将数组属性转换为字符串以逗号分隔的形式,然后将该字符串作为请求参数传递给GET或DELETE方法:
axios.get('/api/getData', { params: { ids: [1, 3, 5].join(',') }})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
这里的join()
方法将数组元素以逗号分隔的形式连接起来形成一个字符串,即"1,3,5"。同样的,在请求删除数据时也可以使用相同的方法:
axios.delete('/api/deleteData', { params: { ids: [1, 3, 5].join(',') }})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
以上就是"Vue中get/delete传递数组参数方法"的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:vue 中 get / delete 传递数组参数方法 - Python技术站