gpt4 book ai didi

javascript - 当我调用一个组件的函数时,初始化该组件的var?

转载 作者:行者123 更新时间:2023-12-03 00:13:07 28 4
gpt4 key购买 nike

当我调用组件A的函数时,如何运行组件A的ngOnInit?

例如:

export class CompositionComponent implements OnInit { 
measure = new MeasureComponent(this.http);
constructor(private http: HttpClient) { }

myFunction(){
measure.functionMeasure();
}

//

export class MeasureComponent implements OnInit {
configCompo;
constructor(private http: HttpClient) { }


ngOnInit() {
this.getConfigCompo().subscribe(data => {
this.configCompo = JSON.parse(data);
});

functionMeasure(){
console.log(this.configCompo)
}

但实际上,当我从组合组件调用此函数时,this.configCompo 并未初始化,因为它是在 ngOnInit() 中初始化的

最佳答案

即使这对您的要求来说听起来很奇怪,因为当组件初始化时应该自动调用 ngOnInit 。但如果您仍然想要,还有其他 3 种方法:

  • 创建测量后调用 measure.ngOnInit() 来初始化测量

  • 在 MeasureComponent 中添加对 myFunction 的 ngOnInit 调用 this.ngOnInit()

  • 或将 ngOnInit 添加到 MeasureComponent 构造函数 this.ngOnInit()

请记住,this.getConfigCompo().subscribe(...) 是一个异步函数,因此您无法在调用它后立即获取值。只能在回调函数中获取

关于javascript - 当我调用一个组件的函数时,初始化该组件的var?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54633436/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com