element-ui表单手动移除单条校验结果

需求及问题

当某些意料之外的操作后,提示信息会一直保留到提交表单后才会清空消失。实际上数据是正确的但是校验提示信息却没有消失。

底层原因还是数据的双向响应问题,数据改变了但是监听事件没被触发,导致dom没有被重新渲染。

解决方案

/**
 * 单项校验信息重置
 * 
 * @param {String} refName 要触发的表单ref名字
 * @param {String} propName 要清除的表单属性名字
 */
validateField(refName, propName){
    this.$nextTick(() => {
        this.$refs[refName].validateField(propName, (valid) => {
            if (!valid) return;
        })
    })
}

你可能感兴趣的:(element-ui表单手动移除单条校验结果)