如何解决正确的角度初始化数据的位置
我需要专家的建议才能知道,在哪里可以将我的变量初始化为angular?在constructor
或ngOnInit
中?还是两者都有?
此处的代码: 选项=> 1
constructor() {
this.name = 'Test Stock Company';
this.code = 'TSC';
this.price = 85;
this.previousPrice = 80;
this.positiveChange = this.price >= this.previousPrice;
this.favorite = false;
}
选项=> 2
ngOnInit() {
this.name = 'Test Stock Company';
this.code = 'TSC';
this.price = 85;
this.previousPrice = 80;
this.positiveChange = this.price >= this.previousPrice;
this.favorite = false;
}
或者两者混合会产生什么影响?
解决方法
您应始终使用ngOnInit
,因为它属于Angular组件生命周期。在ngOnInit
中,您可以访问@Input
变量。您可以通过ngOnInit
在编写测试期间触发fixture.detectChanges()
。
另一方面,构造函数与Angular不相关,它是TypeScript / JavaScript语言的一部分。只能像其他许多语言一样使用Ctor注入服务。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。