关于uniapp双层嵌套v-for渲染页面,点击子项时拿不到参数
2021-04-26 本文已影响0人
变量只提升声明不提升赋值
先上代码
<view class="b_it" v-for="(item,index) in answerList" :key='indedx >
<view class="it_title">
{{item.title}}
</view>
<view class="it_content">
<view class="it_item" v-for="(sitem,index) in item.answer" :key='index'>
<view class="sit_cheak" @click="cheaksOne(sitem)">
<view class="cheakOk" v-if="sitem.cheaks">1</view>
</view>
<view class="sit_msg">
{{sitem.active}}、{{sitem.msg}}
</view>
</view>
</view>
</view>
cheaksOne(sitem){
// sitem.cheaks = !sitem.cheaks
console.log(sitem)
}
代码看似一点毛病都没有。但是神奇的事情发生了。当点击第一项的时候,能正确的拿到sitem,但是点击后面几项的时候。小程序开发者离奇的报错了。
image.png
最后经检查发现。。。是index重名了。把sitem的index换成一个别的字符就行了。
附:如果子项的key绑定的是id的话。父项就不能绑定索引了,也必须得绑定id。或者别的唯一标识