fix(class): correctly clean up on destroy

Fixes #3249
Closes #3256
This commit is contained in:
Tobias Bosch
2015-07-23 16:22:14 -07:00
parent f1e4292072
commit 1438922ffb
2 changed files with 33 additions and 4 deletions

View File

@ -28,8 +28,11 @@ import {ListWrapper, StringMapWrapper, isListLikeIterable} from 'angular2/src/fa
* </div>
* ```
*/
@Directive(
{selector: '[class]', lifecycle: [LifecycleEvent.onCheck], properties: ['rawClass: class']})
@Directive({
selector: '[class]',
lifecycle: [LifecycleEvent.onCheck, LifecycleEvent.onDestroy],
properties: ['rawClass: class']
})
export class CSSClass {
_pipe: Pipe;
_rawClass;
@ -58,6 +61,8 @@ export class CSSClass {
}
}
onDestroy(): void { this._cleanupClasses(this._rawClass); }
private _cleanupClasses(rawClassVal): void {
if (isPresent(rawClassVal)) {
if (isListLikeIterable(rawClassVal)) {