<el-collapse
v-model="item.powerDeviceName"
@change="activeNames_two"
v-for="(item, index1) in taskStep2Data"
:key="item.powerDeviceId"
>
<div v-for="(item2, index) in item.monitorDeviceInfos" :key="item2.monitorDeviceId">
<el-collapse-item
v-show="item2.monitorDeviceId != 3"
:title="item2.monitorDeviceName"
:name="item2.monitorDeivceId"
>
<el-checkbox-group
v-model="typeIdDataChecked_two[index1][index]"
@change="handleCheckedCitiesChange_two"
>
<el-checkbox
style="display: block; text-align: left;height: 39px;line-height:39px;"
class="ckeckbox_style"
v-for="item3 in item2.recognitionTypes"
:title="item3"
:name="item2.monitorDeviceId"
:label="item3+'a'+item2.monitorDeviceId+'a'+item.powerDeviceId+'a'+item2.monitorDeviceType"
:key="item3"
>{{item3 | transformDevice}}</el-checkbox>
</el-checkbox-group>
</el-collapse-item>
</div>
</el-collapse>
複製代碼
$nbsp;最開始我使用的是vue中的ref來獲取對應結構的dom達到獲取id的做用, 但是發現,由於v-for的緣故,每個組件都獲取到了相同的name, 因此致使ref也沒法達到最終的效果。 左思右想一下午,直到次日早上來上班靈光一現。vue
將id值在渲染階段就綁定到最裏層的checkbox上,經過@change獲取到對應的label值,這樣不就解決了,動態獲取的難題,一步到位。數組
// 第一次碼文,還不太熟悉,各位看官見笑dom