elementUI中表单验证是用的async-validator
问题描述
- 这里要实现的逻辑是:
底价 < 限价
- 现在出现的问题是:初始状态底价和限价都是0,当我底价输入4时,提示error:不能大于销售限价,这个是正常的,然后我输入限价为6,
此时底价的error不会消失
解决办法
在限价的callback()前使用validateField方法触发底价的验证
//这里加延时器是因为如果你想在两个关联的里面互相触发,会出现RangeError: Maximum call stack size exceeded (爆栈问题)
setTimeout(() => {
this.$refs.form.validateField(`tableData.${index}.fTradeFloorPrice`);
});
callback();
说明一下为什么我的validateField里面传的参数这么长,因为我是form嵌套table来使用的,如果是form就没有这么复杂的参数了。
其实elementUI的文档里都写了,前面没有认真看