我有一个变量组件idWizard,并在post http未更新后进入ngOnInit。订阅后,变量中不存在新值。该值未定义。
export class HeaderComponent {
@Input() idWizard: string;
ngOninit(){ var response = this.was.postWizardStart(wi);
response.subscribe(res => {
this.idWizard = res.headers.get('idWizard');
console.log("HEADER ngOnInit 2 OK 200 Server - Idwizard is: " +
this.idWizard);
this.ref.markForCheck()
console.log(this.idWizard);
this.emitflag = true;
},
err => {
console.log(err);
});
}
}
}发布于 2019-11-19 22:09:44
你弄错了几件事。首先,你需要实现OnInit,然后你必须正确地写出方法名ngOnInit()(你得到了一个小写的'i‘,它变成了一个大写的'I')。我认为这个方法永远不会运行。
你应该会得到这样的东西:
export class HeaderComponent implements OnInit {
@Input() idWizard: string;
ngOnInit(){
...
}
}发布于 2019-11-19 23:05:17
试试这个,可能行得通。
您可以在ngOnit中调用ngDoCheck(),并将idWizard值作为方法参数传递,如下面的ngDoChcek(this.idWizard)。
https://stackoverflow.com/questions/58935778
复制相似问题