Привязка Knockout.js к страницам, управляемым Ajax

Начинаю получать удовольствие от KnockoutJs(http://knockoutjs.com). Большинство моих веб-приложений основаны на ajax. Весь сайт загружается, а затем от ссылки к ссылке мы просто меняем содержимое тела с помощью вызовов ajax.

Когда ajax вернется с новым содержимым тела, я смогу выполнить свои привязки Knockout. Без проблем. Когда я ссылаюсь на следующую страницу (просто вызов ajax с заменой тела ). Здания Нокаута, я полагаю, все еще в памяти, но на самом деле не ограничены, потому что дом изменился. Несколько вопросов по этой теме.

  1. Если на следующей странице нет нокаута, неужели так уж плохо оставлять объект нокаута просто задерживающимся в памяти? Еще лучше, есть ли способ сбросить (очистить )нокаутирующий объект?

  2. Когда я перехожу с одной страницы с нокаутирующими привязками на другую, имеющую нокаутирующие привязки, просто вызовите ko.applyBindings ()еще раз, чтобы удалить старые вещи и заново привязать новые? (еще раз, когда я говорю о переходе с одной страницы на другую, я просто перезагружаю тело с помощью вызова ajax ).

  3. Есть ли у нокаута "живые" привязки. Что-то вроде живой привязки jQuery? Таким образом, Knockout можно было бы загрузить заранее, а затем не нужно было бы повторно применять его от изменения содержимого к изменению содержимого.

В общем, я ищу совета о том, как лучше всего использовать нокаут со страницы на страницу в приложении, где браузер не обновляется со страницы на страницу.

Заранее спасибо за помощь.

6
задан Andrew Whitaker 17 January 2013 в 21:19
поделиться