壹壹得贰ぺ 2023-11-21 14:54 采纳率: 81.1%
浏览 11

点击弹出表单第一次是正常的 但是点击第二次 那个多选框的自定义检验会自动触发

elemen表单校验,点击弹出表单第一次是正常的 但是点击第二次 那个多选框的自定义检验会自动触发
具体代码是

<el-form-item label="选择部门" :label-width="formLabelWidth" prop="processnameform"
                            :validate-on-rule-change="false">
                            <el-select placeholder="请选择" v-model="processnameform" ref="ref" style="width: 100%;">
                                <el-option v-show="false" label="" value=""></el-option>
                                <el-tree :data="treeList" ref="tree" show-checkbox check-on-click-node node-key="uuid"
                                    :props="defaultProps" :check-strictly='true' :accordion="true"
                                    :default-checked-keys="processuuids" @check-change="handleCheckChange">
                                </el-tree>
                            </el-select>
                        </el-form-item>

js-------------------------===
export default {
data() {
  let processnameform = (rule, value, callback) => {
            let arr = this.$refs.tree.getCheckedKeys(); // 在此获取选中的树形数据
            this.$nextTick(() => {
                if (arr.length == 0 || !arr) {
                    return callback(new Error('请选择工厂'))
                } else {
                    return callback()
                }
            })
        }
 return {
  rules: {
           
                processnameform: [{ required: true, validator: processnameform, trigger: "change" }],
            },
}
}


}
怎么解决这个问题  其中
      this.$nextTick(() => {
                this.$refs.form.clearValidate();
              this.$refs.form.resetFields();
            })
都用过了  不生效
  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-11-21 17:56
    关注

    【相关推荐】




    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 11月21日