vue2向springboot傳值接收不到的解決方法
我們在開發(fā)項(xiàng)目時(shí),經(jīng)常會(huì)前后端分離,這樣方便開發(fā)和測試。但是前后端分離也會(huì)導(dǎo)致許多的BUG出現(xiàn)。
這是一段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("服務(wù)器異常,請稍后再試");
});這是一個(gè)常見的axios方法,其作用是進(jìn)行分頁+條件查詢。在這個(gè)方法中,我們需要向后端傳的值有currentPage(當(dāng)前頁碼)、pageSize(一頁數(shù)據(jù)條數(shù))和查詢的對象。我們再來看后端代碼:
@PostMapping("/list")
public Result<List<BusinessVO>> list(Integer pageIndex, Integer pageSize, BusinessDTO businessDTO) {
return Result.getSuccessResult(businessService.list(pageIndex, pageSize, businessDTO));
}這是后端controller層的方法,通過url來實(shí)現(xiàn)方法的調(diào)用。
但是這樣寫的話,會(huì)發(fā)現(xiàn)一個(gè)問題:前端的參數(shù)后端(controller)接收不到。
原因是在接收前端的參數(shù)時(shí)需要在后端參數(shù)前加注解。正確代碼如下:
@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));
}一般傳參數(shù)時(shí),頁數(shù),頁面大小等和數(shù)據(jù)庫無關(guān)的字段會(huì)直接加在url上,@PostMapping("/list/{pageIndex}/{pageSize}") 在這里加上這兩個(gè)參數(shù),在參數(shù)前面加上@PathVariable注解;前端直接把這兩個(gè)參數(shù)加在url后面即可this.urls.search + "/" + this.currentPage + "/" + this.pageSize。
而條件查詢的參數(shù)一般不外顯,直接使用@RequestBody會(huì)更方便,前端數(shù)據(jù)放在data里面。
注意:在使用@RequestBody注解時(shí),方法必須使用@PostMapping(POST請求)?。?!如使用@GetMapping(Get請求)則會(huì)報(bào)錯(cuò)?。?!
到此這篇關(guān)于vue2向springboot傳值接收不到的解決方法的文章就介紹到這了,更多相關(guān)vue2 springboot傳值內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot+Vue.js實(shí)現(xiàn)前后端分離的文件上傳功能
- vue+springboot前后端分離實(shí)現(xiàn)單點(diǎn)登錄跨域問題解決方法
- 部署vue+Springboot前后端分離項(xiàng)目的步驟實(shí)現(xiàn)
- 使用springboot結(jié)合vue實(shí)現(xiàn)sso單點(diǎn)登錄
- vue+springboot實(shí)現(xiàn)項(xiàng)目的CORS跨域請求
- Vue向后臺(tái)傳數(shù)組數(shù)據(jù),springboot接收vue傳的數(shù)組數(shù)據(jù)實(shí)例
- springboot整合vue實(shí)現(xiàn)上傳下載文件
- springboot+vue+對接支付寶接口+二維碼掃描支付功能(沙箱環(huán)境)
相關(guān)文章
JAVA調(diào)用SAP WEBSERVICE服務(wù)實(shí)現(xiàn)流程圖解
這篇文章主要介紹了JAVA調(diào)用SAP WEBSERVICE服務(wù)實(shí)現(xiàn)流程圖解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10
詳解jdbc實(shí)現(xiàn)對CLOB和BLOB數(shù)據(jù)類型的操作
這篇文章主要介紹了詳解jdbc實(shí)現(xiàn)對CLOB和BLOB數(shù)據(jù)類型的操作的相關(guān)資料,這里實(shí)現(xiàn)寫入操作與讀寫操作,需要的朋友可以參考下2017-08-08
ThreadLocal數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)原理解析
這篇文章主要為大家介紹了ThreadLocal數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)原理解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
springboot中@Async默認(rèn)線程池導(dǎo)致OOM問題
這篇文章主要介紹了springboot中@Async默認(rèn)線程池導(dǎo)致OOM問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06
springboot如何通過SSH連接遠(yuǎn)程服務(wù)器
這篇文章主要介紹了springboot如何通過SSH連接遠(yuǎn)程服務(wù)器問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
maven 在執(zhí)行package,install,deploy時(shí)使用clean與不使用clean的不同之處
有時(shí)候用mvn install后,新改的內(nèi)容不生效,一定要后來使用mvn clean install 才生效,由于之前沒有做記錄,以及記不清是什么情況下才會(huì)出現(xiàn)的問題,于是想看看clean和不clean的區(qū)別,感興趣的朋友跟隨小編一起看看吧2021-08-08

