uniappcheckbox值的改变控制同步到变量办法
简书链接:uniappcheckbox值的改变控制同步到变量办法
文章字数:353,阅读全文大约需要1分钟
刚开始以为:checked 或 : value能改变双向绑定,后面经过测试 是不行的,最后的实现check之后改变变量的办法如下:
1 | <checkbox-group @change="onCheckchange" class="appsize"> |
onCheckchange
1 | onCheckchange(e){ |
第一次的初始化用的 checked="lock"
之后的改变同步到变量需要用到onCheckchange 读取e.detail.value 如果有checkbox选中会返回选中的value数据,因此可以利用此判断。
第二种办法
只监听点击事件
1 | <checkbox activeBorderColor="#005fff" @click="onCheckBoxChange" :checked="cancel" > |
然后进行取反即可
1 | onCheckBoxChange(e){ |
不过此方法不敢保证一定是靠谱的的,因为为确保不会出错我直接测试弄了一个按钮,直接改变了this.cancel=true,会发现check也会变成选中,因此应该是靠谱的。 cancel的值一定会同步到checkbox上。
1 | <button @click="() => { this.cancel = true }">ff</button> |
因此直接简化后变成这样更方便
1 | <checkbox activeBorderColor="#005fff" @click="()=>{ |
尽管有人认为这样写不规范,但是有些东西能直面看到,更为有效,全部封装到其他地方不方便直接管理控制代码,就好比网络请求url,把url的地址提取封装到变量也是如此。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 情迁博客!
评论