过程:而小编出现的情况是在渲染的时候,并没有改变数据的操作,却触发了数据的改变,最终排查之后发现是给input绑值时自动 触发了input事件,触发input事件的原因是因为数值类型数据通过v-model 双向绑定了,input会里的值默认是字符串,用的vue框架,加上.number 修饰符 就解决了
在这里插入图片描 :点击下图的追加报价按钮弹出这个弹窗页面,修改数据,但是出现的情况是我只弹出这个页面,不做其他操作,关闭这个弹窗页面,追加报价按钮就变成不是禁用了
在这里插入图片描述:追加报价按钮的禁用是由数据是改变控制,数据改变了才可以使用,没改变就禁用
在这里插入图片描述:打开弹窗页面不做任何操作,之后关闭弹窗页面,按钮会变成可用,说明数据已经发生功了改变
附上代码
<van-field v-model.number="row.price" type="digit" label="配件价格" input-align="right" :disabled="Boolean(formDataDisabled && row.id)">
绑定数值类型就要打上.number修饰符
最后,写代码不能太随意,要认真点,最好都是有把握的,不管写什么都要自己试一试