element upload组件上传额外参数有两种办法:
1、element的upload组件有个附带的属性是data可用于传递额外参数
用这个自带的属性来传递时,后端可以用request来获取,如下所示:
@PostMapping(value="/importReportData")
@ResponseBody
public void importReportData(@RequestParam("file") MultipartFile file, HttpServletRequest request){
}
前端代码
:data="paramsData"
在computed中监听classifyid,实时改变paramsData的值
computed: {
paramsData: function () {
let params = {
classifyid:this.classifyid
}
return params
}
},
2、第二种方法是用url传参,会比第一种方法简单一些,后端使用@PathVariable来获取
@PostMapping(value="/importReportData/{classifyid}")
@ResponseBody
public void importReportData(@RequestParam("file") MultipartFile file, @PathVariable("classifyid") String classifyid)
前端:
:action="uploadURL"
this.uploadURL = "/api/dataInput/importReportData/"+this.classifyid
//需要个延时使url先改变再上传
setTimeout(function (){
_this.$refs.upload.submit()
}, 500)