2012-09-19 8 views
5

Estoy utilizando knockoutJS como un marco de MVVM del lado del cliente.Recolección de modelo de vista no utilizada en javascript

A veces estoy creando un modelo de vista temporal (a través de funciones js) y los asigno a elementos DOM que están dinámicamente cargados.

Cuando, por ejemplo, ya no es necesario un panel de comentarios para cierto contenido, elimino el panel de comentarios div del DOM. ¿Qué le sucede a la variable que se utilizó como modelo de vista cuando llamé a applyBindings con la especificación de un parámetro de elemento DOM? ¿Se está de alguna manera dispuesto? ¿O soy responsable de manejar eso? Si es así, ¿cómo hago esto?

Respuesta

2

Asignar el modelo de vista a una variable:

var viewModel = {...} 
ko.applyBindings(viewModel, $("#html-id")); 

Para destruir el modelo de vista:

ko.cleanNode($("#html-id")); 
delete viewModel; 
$("#html-id").remove(); 

No he probado esto todavía, pero es lo que tengo la intención de utilizar en una nueva proyecto que tendrá módulos dinámicamente cargados/destruidos ...

Cuestiones relacionadas