实例代码:上传图片是必填项,加ref
和prop
<el-form-item label="整改前现场照片" ref="beforeImg" prop="imageUrl">
<el-upload
ref="upload"
action="/webCenter/file/api/uploadAttachment"
multiple
:on-preview="handlePictureCardPreview"
:on-remove="handleRemove"
:on-success="fileUploadSuccess"
:before-upload="beforeUpload"
:data="fileData"
:show-file-list=false
accept="image/*"
>
<el-button size="small" type="primary">点击上传</el-button>
</el-upload>
</el-form-item>
问题1:在上传图片后还是会出现提示消息
fileUploadSuccess(res) {
this.$refs.beforeImg.clearValidate()
this.$message.success(res.msg)
}
解决:在上传成功后,需要通过this.$refs.beforeImg.clearValidate()
单独对表单项取消验证,这样提示消息就会消失。
问题2:已经上传图片,但在提交表单时,验证规则还是不通过,显示为false
解决:在提交表单或者在打开表单之前,对上传文件列表是否有值进行判断,若有值,则取消校验。
import _ from "lodash";
if (this.filelist.length) {
_.unset(this.rules, ["imageUrl"]);
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。