Javascript 如何在需要ViewChild值的输入集中运行函数?
如何在Javascript 如何在需要ViewChild值的输入集中运行函数?,javascript,angular,Javascript,Angular,如何在Input()set中的ngAfterViewInit之后调用函数 我有一个部门: 模板: 我想运行一些第三方函数,在这个div上执行一些逻辑。问题是,当set为invoke时,div为未定义的,并且只有在ngAfterViewInit初始化后才出现 @ViewChild('myDiv') myDiv; @Input set value(val) { this.run(val); // <--- first run } run(val) { console.log({ m
Input()
set
中的ngAfterViewInit
之后调用函数
我有一个部门:
模板:
我想运行一些第三方函数,在这个div
上执行一些逻辑。问题是,当set为invoke时,div为未定义的
,并且只有在ngAfterViewInit初始化后才出现
@ViewChild('myDiv') myDiv;
@Input set value(val) {
this.run(val); // <--- first run
}
run(val) {
console.log({ myDiv: this.myDiv }); // <--- undefined
someLib({ // this is the function I can't change.
div: this.myDiv.nativeElement
});
}
ngAfterViewInit() {
console.log({ myDiv: this.myDiv }); // <-- initialized
}
@ViewChild('myDiv')myDiv;
@输入设定值(val){
this.run(val);//您可以使用ngOnChanges(),因此,每当输入属性发生任何更改时,此生命周期方法将调用将设置值存储在某个局部变量中_set这类,并且在ngAfterViewInit()中初始化ui后,通过传递_setvariables调用run方法您可以使用ngOnChanges(),因此,每当输入属性发生任何更改时,此生命周期方法都将调用将设置值存储在某个局部变量\u set类型中,并且在ngAfterViewInit()中初始化ui后,通过传递\u set变量调用run方法