2016-08-10 3 views
0

У меня есть представление, которое имеет компонент, и этот компонент имеет дочерний компонент. Вид извлекает данные с нашего сервера. Первый компонент реализует двустороннюю привязку для некоторых пользовательских атрибутов, а дочерний компонент аналогичен, используя данные, которые были обработаны родителем. Во всяком случае, когда приложение запускает компонент представления, он может отображать полученные данные привязки. Компонент компонента выходит из строя. Я думаю, мне нужно либо обновить привязку, либо проверить какое-либо событие, либо дождаться, пока представление не получит данные до attach(). Я не уверен, что последний будет выглядеть лучше, потому что компонент и дочерний компонент могут быть стилизованы, чтобы показать, что что-то происходит, а просто блокирует весь просмотр во время извлечения. Я нашел это, http://blog.williamhayes.org/2016/03/aurelia-custom-element-async-life-cycle.html; однако импорт мне не подходит.Компонент Aurelia в компонентах с асинхронными данными из вида

Как получить представление с компонентом с асинхронными данными, которые в свою очередь поставляет дочерний компонент с результатами?

ответ

0

Я не могу вспомнить, почему импорт был провал; однако, хотелось бы отметить, что техника CompositionTransaction решила эту проблему. В сочетании с использованием связующих декораторов и changeHandlers он обеспечил идеальное решение. http://blog.williamhayes.org/2016/03/aurelia-custom-element-async-life-cycle.html

0

Я считаю, что вы ищете крюк activate(). Вы можете вернуть Promise, и представление будет ждать данных. Например:

activate() { 
    return this.service.getSomeData() 
     .then(data => { 
     this.propertyThatIsBoundToChildComponent = data; 
     }); 
} 

Более подробная информация на http://aurelia.io/hub.html#/doc/article/aurelia/framework/latest/cheat-sheet/7

Смежные вопросы