![](https://img.haomeiwen.com/i13509642/47c0f3c1090fda6a.png)
当我点击红色框框的取消该项选择时,结果绿色框框被取消了。找了半天没找到原因。最后终于让我发现。
<van-checkbox-group v-model="result" class="main-middle" ref="checkboxGroup" @change="groupChange"> 注意就是这里的change影响了
<div class="all" v-for="(item, index) in list" :key="index" @click="toggle(index)">
<div class="left-img">
<img :src="require(`@/assets/image/`+item.img+`.png`)">
</div>
<div class="right-info">
<div class="right-title">
<span>{{item.title}}</span>
<van-checkbox :name="item.title" class="checkboxes top-check" ref="checkboxesChild">
<template #icon="props">
<img class="img-icon" :src="props.checked ? require(`@/assets/image/icon_checked_active.png`) : require(`@/assets/image/icon_check.png`)" />
</template>
</van-checkbox>
</div>
</div>
</div>
</van-checkbox-group>
附上代码。结果发现是van-checkbox-group 上的change影响了,当然不是change影响了,而是我里面写的东西影响了。
private groupChange(val: any) {
console.log(val)
this.sms = ""
if (this.result.length===1) {
Dialog.alert({
title: '提示',
message: '请必选一个',
}).then(() => {
// on close
});
} else {
this.isbtnDis = false
this.isNext = false
if (this.result.length!==0) {
PageModule.setYeWu(this.result.toString())
}
// 找到了,就是这里影响了。我想控制全选
if (this.result.length===3) {
this.allChecked = true
} else {
this.allChecked = false
}
}
}
让我看看 是哪里影响了。
所以如果不对,要细细排除一下,到底是哪里的问题。
网友评论