vue2向springboot传值接收不到的解决方法
我们在开发项目时,经常会前后端分离,这样方便开发和测试。但是前后端分离也会导致许多的BUG出现。
这是一段vue2代码:
let url = this.urls.search + "/" + this.currentPage + "/" + this.pageSize;
axios({
method: "POST",
url: url,
data: this.searchForm
}).then((res) => {
if (res.status === 200) {
this.loading = false;
this.menuList = res.data.data;
} else {
this.$message({
type: 'error',
message: res.data.msg
});
}
}).catch((error) => {
console.log(error);
this.loading = false;
this.$message.error("服务器异常,请稍后再试");
});这是一个常见的axios方法,其作用是进行分页+条件查询。在这个方法中,我们需要向后端传的值有currentPage(当前页码)、pageSize(一页数据条数)和查询的对象。我们再来看后端代码:
@PostMapping("/list")
public Result<List<BusinessVO>> list(Integer pageIndex, Integer pageSize, BusinessDTO businessDTO) {
return Result.getSuccessResult(businessService.list(pageIndex, pageSize, businessDTO));
}这是后端controller层的方法,通过url来实现方法的调用。
但是这样写的话,会发现一个问题:前端的参数后端(controller)接收不到。
原因是在接收前端的参数时需要在后端参数前加注解。正确代码如下:
@PostMapping("/list/{pageIndex}/{pageSize}")
public Result<List<BusinessVO>> list(@PathVariable Integer pageIndex, @PathVariable Integer pageSize, @RequestBody BusinessDTO businessDTO) {
return Result.getSuccessResult(businessService.list(pageIndex, pageSize, businessDTO));
}一般传参数时,页数,页面大小等和数据库无关的字段会直接加在url上,@PostMapping("/list/{pageIndex}/{pageSize}") 在这里加上这两个参数,在参数前面加上@PathVariable注解;前端直接把这两个参数加在url后面即可this.urls.search + "/" + this.currentPage + "/" + this.pageSize。
而条件查询的参数一般不外显,直接使用@RequestBody会更方便,前端数据放在data里面。
注意:在使用@RequestBody注解时,方法必须使用@PostMapping(POST请求)!!!如使用@GetMapping(Get请求)则会报错!!!
到此这篇关于vue2向springboot传值接收不到的解决方法的文章就介绍到这了,更多相关vue2 springboot传值内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Maven pom的distributionManagement配置方式
文章主要介绍了Maven的distributionManagement配置方式,以及它的作用、配置方法和重要性,distributionManagement用于指定构件的发布位置,包括下载URL、状态等,文章还详细解释了如何配置repository和snapshotRepository,以及它们的用途和区别2025-01-01
springBoot 打war包 程序包com.sun.istack.internal不存在的问题及解决方案
这篇文章主要介绍了springBoot 打war包 程序包com.sun.istack.internal不存在的问题及解决方案,亲测试过可以,需要的朋友可以参考下2018-07-07
Spring Boot 2.7.8 集成 Thymeleaf的最佳实践与常见问题
本文详细介绍了如何将SpringBoot2.7.8与Thymeleaf集成,从项目依赖到配置文件设置,再到控制器和模板的创建,以及如何解决常见的集成问题,通过实际案例,读者可以快速掌握SpringBoot和Thymeleaf的协同工作,并解决开发过程中遇到的问题,感兴趣的朋友跟随小编一起看看吧2025-12-12
SpringSession会话管理之Redis与JDBC存储实现方式
本文将详细介绍Spring Session的核心概念、特性以及如何使用Redis和JDBC来实现会话存储,帮助开发者构建更加健壮和可扩展的应用系统,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2025-04-04
Spring @DateTimeFormat日期格式化时注解场景分析
这篇文章主要介绍了Spring @DateTimeFormat日期格式化时注解场景分析,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2023-05-05


最新评论