zoukankan      html  css  js  c++  java
  • Element-ui中为上传组件添加表单校验

    vue所依赖的Element的UI库在使用其中的upload组件时,可能很大几率会遇到这个题,需要给upload组件添加表单校验

    大家这里直接看代码就可以

              <el-form-item class="baseinfo-headimg" ref="headimgUpload" label="上传首图:" prop="headImg">
                <el-upload style="display:inline-block;margin-left:5px;"
                  class="upload-headImg"
                  list-type="picture-card"
                  :on-success="handleHeadImgSuccess"
                  :before-upload='handleHeadImgBefore'
                  ref="headImgElement"
                  accept=".jpg,.jpeg,.png,.gif,.bmp,.JPG,.JPEG,.PBG,.GIF,.BMP"
                  :action="imageUploadUrl">
                  <div slot="file" slot-scope="{file}">
                    <img
                      class="el-upload-list__item-thumbnail"
                      :src="baseInfo.headImg">
                    <span class="el-upload-list__item-actions">
                      <span
                        class="el-upload-list__item-preview"
                        @click="handlePictureCardPreview(file)">
                        <i class="el-icon-zoom-in"></i>
                      </span>
                      <span
                        class="el-upload-list__item-delete"
                        @click="handleHeadImgRemove(file)"
                      >
                        <i class="el-icon-delete"></i>
                      </span>
                    </span>
                  </div>
                  <i class="el-icon-plus"></i>
                </el-upload>
                <p class="upload-tip"><span>*</span>图片尺寸300px*300px,不超过60KB</p>
                <el-dialog :visible.sync="dialogUploadIsShow">
                  <img width="100%" :src="baseInfo.headImg">
                </el-dialog>
              </el-form-item>

      js:

     baseInfoRules: {
            headImg: [
              {
                required: true, message: '请上传首图', trigger: 'change'
              }
            ]
          }, // 表单正则
    methods: {
           // 首图上传成功
        handleHeadImgSuccess(res) {
         // xxx的其他操作
          this.$refs.headimgUpload.clearValidate(); // 关闭校验
        },  
    }

      主要的解决思路为:为upload组件外层的el-form-item添加ref。然后在upload组件上传文件成功后,通过this.$refs.element(元素).clearValidate();方法该组件的正则校验。

    在开发中所做的总结,文章格式较为简陋,望见谅。

  • 相关阅读:
    坑爹啊 StringDictionary 居然是不区分大小写的
    .NET平台OLEDB类型映射到Access数据类型 (转)
    国内省选乱做
    计算几何做题记录
    P6634 [ZJOI2020] 密码 解题报告
    AT2704 [AGC019E] Shuffle and Swap 解题报告
    ARC110F Esoswap 解题报告
    P6631 [ZJOI2020] 序列 解题报告
    P6633 [ZJOI2020] 抽卡 解题报告
    CF1605F PalindORme 解题报告
  • 原文地址:https://www.cnblogs.com/bgwhite/p/11804792.html
Copyright © 2011-2022 走看看