У меня есть свойство в моем классе:
class Control {
@bindable households;
get people() {
return households
.map(household => househould.people)
.reduce((g1, g2) => g1.concat(g2), []);
}
}
, которое я использую для вычисления коллекции всех people[]
во всех домохозяйствах, которое затем отображается здесь:
<ul>
<li repeat.for="person of people">
${person.firstName} ${person.lastName} - ${person.phone}
</li>
</ul>
Мне нужно, чтобы список обновлялся всякий раз, когда люди добавляются в домашнее хозяйство, ИЛИ, если обновляется какое-либо из представленных свойств, firstName
, lastName
, phone
, для любого элемента в вычисляемой коллекции.Как я могу сделать это в Аурелии?Если я использую @computedFrom()
, он не будет обнаруживать изменения в элементах массива, и поскольку список людей во всех домохозяйствах является динамическим, я не могу просто создать наблюдателя для каждого элемента, не создавая систему для управления, когда наблюдатели должны быть подписаны /отписался.