Наиболее распространенным подходом является использование привязки шаблона. Это будет выглядеть примерно так:
<div data-bind="template: { name: 'mainTmpl', data: myData }"></div>
var viewModel = {
myData: ko.observable(),
}
Теперь вы можете установить myData для вашей новой модели представления, например: viewModel.myData(newData)
, и привязка шаблона будет обрабатывать повторный рендеринг вашего контента на основе новых данных.
В противном случае вы можете сделать что-то вроде вызова: ko.cleanNode(yourRootElement)
(или передать документ) и затем ko.applyBindings(yourNewViewModel)
, чтобы удалить привязки и применить их к новой модели представления.