Vuejs вложенный v-for и проблема с тегом <tr>
Когда я пытаюсь вложить внутреннюю переменную a с привязкой v-for на каждой, vue жалуется, что свойства не определены. В чем проблема?
<table>
<thead></thead>
<tbody>
<tr v-for="item in items">
<td>{{ item.name }}</td>
<tr v-for="child in item.children">
<td>{{ child.name }}</td>
</tr>
</tr>
</tbody>
</table>
Вот скрипка js: https://jsfiddle.net/78s3qnz5/
2 ответа
Вы также можете использовать шаблоны тегов, если вы хотите использовать строки.
<table>
<thead></thead>
<tbody>
<template v-for="item in items">
<tr>
<td>{{ item.name }}</td>
</tr>
<tr v-for="child in item.children">
<td>{{ child.name }}</td>
</tr>
</template>
</tbody>
</table>
Проблема из-за <tr>
тег вложен в другой <tr>
тег, который вызывает неверную разметку и Vue
не может сделать это. Действительно., Сообщение об ошибке не ясно.
Решение заключается в исправлении визуализированной разметки путем замены вложенной <tr>
с <td>
,
Рабочий пример: