Bootstrap

记录一个v-if与自定义指令的BUG

在做某个系统的时候因为element自带的v-inputv-input-number不能满足所需要的功能,例如限制小数位数,最大值最小值和值是否允许存在非0之类的状态,写了一个自定义指令v-onlyNumber来满足需求(v-onlyNumber在我其他文章内有直接copy就行),结果在碰到v-if的时候发现存在某种情况会导致当在v-if内的的标签挂载上指令,关闭v-if之后,会导致挂载对象发生错误的问题

在Vue的自定义指令内有一句
在这里插入图片描述
自定义指令其实不推荐在组件上使用,我使用指令的node是整个列表最后一个,当v-if关闭之后会找同样的v-input挂载上去

解决办法就是换掉v-if使用v-show

或者使用v-form自带的rules对付一下
但rules不是很方便写小数限制,这就看项目需求和时间成本了

;