From eb3586d77757dcdfe3a3f9c9417e09e6f37154be Mon Sep 17 00:00:00 2001 From: Misko Hevery Date: Tue, 16 Jun 2015 15:53:52 -0700 Subject: [PATCH] fix: makes NgModel work in strict mode --- .../angular2/src/forms/directives/ng_model.ts | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/modules/angular2/src/forms/directives/ng_model.ts b/modules/angular2/src/forms/directives/ng_model.ts index 14072b9647..d000c80e42 100644 --- a/modules/angular2/src/forms/directives/ng_model.ts +++ b/modules/angular2/src/forms/directives/ng_model.ts @@ -38,30 +38,25 @@ const formControlBinding = CONST_EXPR(new Binding(NgControl, {toAlias: forwardRe exportAs: 'form' }) export class NgModel extends NgControl { - control: Control; - ngModel: EventEmitter; + _control = new Control(""); + _added = false; + ngModel = new EventEmitter(); model: any; - _added: boolean; - - constructor() { - super(); - this.control = new Control(""); - this.ngModel = new EventEmitter(); - this._added = false; - } onChange(c) { if (!this._added) { - setUpControl(this.control, this); + setUpControl(this._control, this); this.control.updateValidity(); this._added = true; }; if (StringMapWrapper.contains(c, "model")) { - this.control.updateValue(this.model); + this._control.updateValue(this.model); } } + get control() { return this._control; } + get path(): List { return []; } viewToModelUpdate(newValue: any): void { ObservableWrapper.callNext(this.ngModel, newValue); }