项目场景:checkbox下想要使用includes来判断下标数组中是否包含当前的value,
问题描述:在使用checkbox时,本意想着每次选中都向一个数组中添加当前的value,然后通过includes来判断是否包含当前value来进行回显,结果发现不会回显,输出得知使用includes拿到的是undefined
<view class="weui-cell__hd">
<checkbox value="{
{item.value}}" checked="{
{values.incloudes(item.value)}}"/>
</view>
原因分析:
在wxml中不可使用incloudes、indexOf等这种,所以导致无法判断
解决方案:
为options添加一个checked属性来专门控制是否选中,在每次值改变时去修改这个属性
// idxs与options分别代表下标集合和复选框选项
resetOptions() {
let { idxs, options } = this.data;
options.forEach((el) => {
if (idxs.includes(el.value)) {
el.checked