在通过v-if来控制表单的动态显示时,会出现表单验证无效的情况,实际上是因为vue的diff算法,在diff算法中会尽可能的复用组件,所以切换了表单后,diff算法会复用组件,并没有重新渲染,所以需要配合key属性
解决方案有:
1. 在 v-if 的元素上添加 key 标识,将动态组件区分开
2. 用 v-show 代替 v-if,此方法可能会导致其他问题,需结合实际情况
在通过v-if来控制表单的动态显示时,会出现表单验证无效的情况,实际上是因为vue的diff算法,在diff算法中会尽可能的复用组件,所以切换了表单后,diff算法会复用组件,并没有重新渲染,所以需要配合key属性
解决方案有:
1. 在 v-if 的元素上添加 key 标识,将动态组件区分开
2. 用 v-show 代替 v-if,此方法可能会导致其他问题,需结合实际情况
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。