<van-uploader
v-model="uploader"
:max-count="1"
:before-read="beforeRead"
:after-read="afterRead"
:before-delete="delImgId"
>
</van-uploader>
js:
beforeRead(file, callback) {
const isImgType = file.type === "image/jpeg" || file.type === "image/png";
const isLt10M = file.size / 1024 / 1024 < 10;
if (!isImgType) {
this.$toast("上传图片只能是 JPG或PNG 格式!");
// callback(false);
return false;
}
if (!isLt10M) {
this.$toast("上传图片大小不能超过 10MB!");
// callback(false);
return false;
}
// callback(true);
return true;
},
afterRead(file) {
file.status = "uploading";
file.message = "上传中...";
request.uploadPic(file).then((res) => {
if (res.code == 1) {
file.status = "done";
file.message = "上传完成";
this.ruleForm.whitePhotoId = res.data;
} else {
file.status = "failed";
file.message = "上传失败";
this.$toast(res.data);
}
});
},
delImgId(file) {
this.ruleForm.whitePhotoId = "";
this.ruleForm.whitePhoneUrl = "";
return true;
},
uploadPic(data) {
return axiosRequest.post("/file/uploadFile ", data, {
isUpload: true
});
},