需求
在做删除功能时,我们需要一次删除多个项目,一般根据id来删除,这样就需要后端能够接收数组。在此记录一种方法,避免字符串拼接和分割。
后端代码
@RestController
@RequestMapping("/test")
public class TestController {
@GetMapping("/delete/{ids}")
public AjaxResult testDel(@PathVariable Long[] ids){
log.info(Arrays.toString(ids));
return AjaxResult.success();
}
}
重要的部分有两个,路由中的{ids}需要和方法中的参数名称一致,@PathVariable注解表明这是一个路径参数。另外,参数类型也决定了从前端传递来的参数类型要匹配。
前端代码
export function delProject(id) {
return request({
url: '/yanan/project/' + id,
method: 'delete'
})
}
前端代码非常简单,就是拼接即可,如果id是一个数组,拼接完的结果如下:

接口测试工具
也可以在接口测试工具中自行测试
再次提醒,后端方法中的参数类型决定了前端传递的参数类型,如果类型不匹配接收就会出错。
文章介绍了在开发中如何实现批量删除功能,重点在于后端如何接收和处理由前端传递的ID数组,通过使用@PathVariable注解和特定的路由设计,避免了字符串拼接和分割的操作。同时,前端只需简单拼接URL即可发送请求。接口测试工具可用于验证功能的正确性。
2607

被折叠的 条评论
为什么被折叠?



