【发布时间】:2019-01-27 13:53:29
【问题描述】:
我在Ionic 3 应用程序上收到以下错误。
TypeError: Cannot read property 'get' of undefined
at Object.eval [as updateDirectives] (ng:///NewLoginPageModule/NewLoginPage.ngfactory.js:196:39)
at Object.debugUpdateDirectives [as updateDirectives] (http://localhost:8100/build/vendor.js:14693:21)
at checkAndUpdateView (http://localhost:8100/build/vendor.js:13862:14)
at callViewAction (http://localhost:8100/build/vendor.js:14212:21)
at execComponentViewsAction (http://localhost:8100/build/vendor.js:14144:13)
at checkAndUpdateView (http://localhost:8100/build/vendor.js:13868:5)
at callViewAction (http://localhost:8100/build/vendor.js:14212:21)
at execEmbeddedViewsAction (http://localhost:8100/build/vendor.js:14170:17)
at checkAndUpdateView (http://localhost:8100/build/vendor.js:13863:5)
at callViewAction (http://localhost:8100/build/vendor.js:14212:21)
.ts
ulLoginForm: FormGroup;
constructor(private formBuilder: FormBuilder) {}
ionViewDidLoad() {
this.initForm();
}
initForm() {
this.ulLoginForm = this.formBuilder.group({
password: ['', Validators.required]
})
}
.html
<form [formGroup]="ulLoginForm">
<ion-list>
<ion-item>
<ion-input type="password" placeholder="Password" formControlName="password"></ion-input>
<p *ngIf="ulLoginForm.get('password').hasError('required') && ulLoginForm.get('password').touched" class="error" padding-left>Password
is empty</p>
</ion-item>
</ion-list>
</form>
【问题讨论】:
-
在构造函数中调用
this.initForm();。 -
根据 Angular 团队的说法,这不是一个好的编码实践。例如当我们进行单元测试等时@fatemefazli
-
@Sampath 你能解释一下吗?
-
btw @Sampath 你在哪里打电话给
ionViewDidLoad()?? -
是
Ionic 3的生命周期钩子:@SaurabhAgrawal ionicframework.com/docs/api/navigation/NavController
标签: angular typescript ionic3