angular2react
angular2react copied to clipboard
Trigger $destroy on jqLite elements
Currently, componentWillUnmount
only calls this.state.scope.$destroy()
.
It should also "destroy" the compiled element so $destroy
is trigger: https://docs.angularjs.org/api/ng/function/angular.element#events
$destroy - AngularJS intercepts all jqLite/jQuery's DOM destruction apis and fires this event on all DOM nodes being removed. This can be used to clean up any 3rd party bindings to the DOM element before it is removed.
3rd party libraries depend on this: see $mdMenu fron AngularJS Material.
How to implement:
- In
compile
do:this.setState({ compiledElement: $injector.get('$compile')(element)(this.state.scope) });
- In
componentWillUnmount
doangular.element(this.state.compiledElement).empty();