这个问题的原因是因为我们在上传文件的时候,由于网络原因或者文件过大等因素,可能会导致文件上传需要一定的时间,而我们可能会在上传完成之前就调用了上传成功函数success。这时候,就会出现上述的问题。
📌那么,该如何解决呢?其实很简单,我们只需要在调用上传成功函数success之前,先判断一下文件是否上传完成即可。具体实现方法如下:
uni.uploadFile({
url: '上传文件的url',
filePath: '文件路径',
name: '文件名',
success: function(res) {
// 这里是上传成功的函数
// 在此处判断文件是否上传完成
if (res.statusCode == 200) {
// 文件上传完成
// 调用上传成功函数success
success(res.data);
} else {
// 文件上传失败
// 这里可以进行相应的处理操作
}
},
fail: function(res) {
// 文件上传失败
// 这里可以进行相应的处理操作
}
});