在使用checkbox时发现一个问题
需求如下:
页面列表可以批量删除
源码:
<label class="selectBox">
<input class="selectBtn" @change="singleChecked" name="selectGoods" type="checkbox" :value="item.apply_id" v-model="selectedGoods"/>
</label>
出现的问题:
正常情况下,只需设置value和v-model即可,选中或消除的项即可自动存储在selectedGoods数组里,但是执行的时候,发现开发者工具可正常运行,手机上点击checkbox框的时候会选不中或者不容易选中,确切的说是闪现一个选中状态又回到选不中的状态,断点之后发现是change里的方法执行了两遍(第一遍选中,第二遍取消),不断尝试各种解决办法之后,发现有两种方法还算有效,目前微信开发者工具和iphone6已没问题,其他型号手机未测试
解决方法如下:
1.将@change="singleChecked"换为v-on:click="singleChecked"
测试后发现change方法会执行两次 但click方法不会,两种方法定义不同,可见vue官网详解
2.在change方法中设置loading,也就是在方法的第一行添加loading,执行方法结束时关闭loading

目前尚未找到其他解决办法,如大神们有解决办法欢迎留言
网友评论