-
Notifications
You must be signed in to change notification settings - Fork 22
Description
Предположим, что у нас есть следующий лайаут приложения:
ns.layout.defined({
'app': {
'boxItem@': {
'itemView': {}
},
'itemCheckerCollection': {}
}
});Приложение выводит в бокс элемент, выбранный в из списка коллекции itemCheckerCollection.
И itemView и элемент коллекции itemCheckerCollection зависят от одной и той же модели.
Предположим, что мы изменяем выводимый элемент коллекции, задавая новые параметры страницы и вызывает ns.page.go(). Формируется новый HTML страницы, в котором все элементы коллекции были валидны и их не нужно перерисовывать. Вызывается ns-view-hide у неактуального itemView.
При обработке этого события мы инвалидируем модель, с которой связан элемент коллекции itemCheckerCollection.
Данный действие приводит к ошибке, т.к. дальнейший обход дерева HTML не может найти новый элемент для невалидной вью коллекции itemCheckerCollection (напомню, что на момент формирования дерева HTML все элементы коллекции itemCheckerCollection были валидны).
Нужно как-то разрешить эту проблему, чтобы дерево HTML всегда было актуально для каждой фазы обработки.