En un método en una subclase Ember.View, me gustaría realizar cambios en el DOM solo si el elemento de vista ya se ha insertado en el DOM. ¿Cómo puedo verificar eso?Ember.js: compruebe si el elemento de vista se inserta en DOM
Sé que podría crear una propiedad auxiliar de este modo:
didInsertElement: function() {
this.set('elementIsInserted', true);
}
willDestroyElement: function() {
this.set('elementIsInserted', false);
}
pero ¿hay alguna forma canónica, incorporada?
No encontré nada descremado view.js, pero quizás me falta algo.
¡Gracias! Una desventaja parece ser que ahora debe llamar a 'this._super()' siempre que declare su propio didInsertElement en las subclases de Ember.View. –
Esto es exactamente lo que necesitaba gracias por la respuesta concisa. – Nomad101
Entonces, ¿cómo se accede desde dentro de su controlador? Supongamos que tengo un código en el controlador que solo quiero ejecutar una vez que se ha insertado la vista, pero no quiero ese código dentro de didInsertElement. Verificaría esta bandera y pondría un .observes() en el método ¿a qué? ¡Gracias! – bfcoder