Полимерный дом-повтор внутри Iron-data-table
Итак, у меня есть данные примерно так:
data: {
0: {
id: 1
name: Config1
devices: {
data: {
0: {
id: 1
ip_address: 192.168.11.1
},
1: {
id: 2
ip_address: 192.168.11.2
},
..
},
},
1: {
id: 2
name: Config2
devices: {
data: {
0: {
id: 1
ip_address: 192.168.11.3
},
1: {
id: 2
ip_address: 192.168.11.4
},
2: {
id: 3
ip_address: 192.168.11.5
},
..
},
},
..
}
скажем, я хочу отобразить его в <iron-data-table>
и я ожидаю так:
Config Name | IP Address
Config1 | 192.168.11.1 - 192.168.11.2
Config2 | 192.168.11.3 - 192.168.11.4 - 192.168.11.5
и это текущий код:
<iron-ajax url="data" last-response="{{response}}" auto></iron-ajax>
<iron-data-table items="[[response.data]]">
<data-table-column name="Config Name">
<template>[[item.name]]</template>
<data-table-column>
<data-table-column name="IP Address">
<template is="dom-repeat items="[[item.devices.data]]" as="dev">
[[dev.ip_address]]
</template>
<data-table-column>
</iron-data-table>
Проблема в том, что IP-адрес не отображается. Мне нужно использовать что-то вроде <dom-repeat>
потому что количество устройств каждой конфигурации отличается, например, ID =1 имеют 2 устройства, ID =2 имеют 3.
Есть ли другой способ решения этой проблемы?
Спасибо за ваше внимание и вашу помощь.
1 ответ
Как вы уже заметили, повторение здесь не сработает. Ваше единственное решение - написать функцию, которая затем возвращает ip в виде String.
<data-table-column name="IP Address">
<template>[[_getIpAddresses(item)]]</template>
<data-table-column>
Маленький совет железная таблица данных мертва, никто не поддерживает этот репо, лучше используйте vaadin-grid