Примечание ОП: Я не спрашиваю о встроенной отложенной настройке выбивки, если только этим нельзя манипулировать, чтобы каким-то образом выполнить это
У меня есть приложение, в котором загружены все возможные экраны и которые изначально привязаны к модели представления.Одно из свойств модели представления управляет тем, какой «экран» виден пользователю.
Для явного болезненного любопытства мне интересно, есть ли встроенный или относительно простой способ сказать нокауту прекратить манипулирование определеннымчасти DOM, «обновлять этот блок, только если свойство X равно этому значению».Или даже лучше - не манипулируйте ЛЮБЫМИ дочерними элементами, если видимость этого элемента отключена в KO.
Конечным результатом будет то, что "невидимые" экраны не будут обновлены, в то время как наблюдаемые в модели представления все равно будут выполнять свою работу в фоновом режиме.Затем, когда экран меняется, DOM для этого вновь видимого экрана будет обновлен.
На многих экранах используются одни и те же наблюдаемые объекты, поэтому я думаю, что может быть выигрыш в производительности, если не постоянно повторно манипулировать DOM - например, обновлять списки HTML, которые в данный момент не видны пользователю, при работе с настройками вдругой экран.
Или, возможно, выигрыш в производительности незначителен, поскольку браузер не перерисовывает скрытые элементы.И вы можете сказать мне так же.
Запуск KnockoutJS 3.4.x, если это имеет значение.