Javascript 如何访问组件实例typeof中的成员?
我在应用程序中使用角度材质的Javascript 如何访问组件实例typeof中的成员?,javascript,angular,angular-material,Javascript,Angular,Angular Material,我在应用程序中使用角度材质的MatDialog。在这里,我创建了一个父弹出组件ParentComponent,其中我将ChildComponent作为参数传递,并在父组件的构造函数中访问该子组件。但是,此参数的类型为typeof。我想使用这个typeof实例访问子组件内部的成员,例如:TestFunction 基本上,我有popup的close方法,它应该调用save button子组件的TestFunction()。 代码如下: 将子组件作为参数传递给父组件: constructor(priv
MatDialog
。在这里,我创建了一个父弹出组件ParentComponent
,其中我将ChildComponent
作为参数传递,并在父组件的构造函数中访问该子组件。但是,此参数的类型为typeof
。我想使用这个typeof
实例访问子组件内部的成员,例如:TestFunction
基本上,我有popup的close方法,它应该调用save button子组件的TestFunction()。
代码如下:
将子组件作为参数传递给父组件:
constructor(private _dialog: MatDialog){}
let dialogRef = this._dialog.open(ParentComponent, {
data: { component: ChildComponent }
});
constructor(public dialogRef: MatDialogRef<ParentComponent>,
@Inject(MAT_DIALOG_DATA) public data: any) { }
ngOnInit() {
console.log('data in component: ',this.data.prototype);
this.data.TestFunction();
}
子组件:
TestFunction(){ console.log('test message')}
在父组件中访问:
constructor(private _dialog: MatDialog){}
let dialogRef = this._dialog.open(ParentComponent, {
data: { component: ChildComponent }
});
constructor(public dialogRef: MatDialogRef<ParentComponent>,
@Inject(MAT_DIALOG_DATA) public data: any) { }
ngOnInit() {
console.log('data in component: ',this.data.prototype);
this.data.TestFunction();
}
但是我想要TestFunction()。dialogRef:MatDialogRef;
this.dialogRef=this.matDialog.open(您的组件{
禁用关闭:false
});
//子功能
this.dialogRef.componentInstance.TestFunction()中
dialogRef:MatDialogRef;
this.dialogRef=this.matDialog.open(您的组件{
禁用关闭:false
});
//子功能
this.dialogRef.componentInstance.TestFunction()中
打开对话框时返回的matDialogRef
有一个属性componentInstance
,您可以通过该属性访问组件的功能打开对话框时返回的matDialogRef
有一个属性componentInstance
,您可以通过该属性访问组件的功能componentInstance
由于未定义,您可以上传您的相关代码以及昨天的更改吗?在我自己的代码中遵循相同的模式会产生一个已定义的组件noice!很高兴听到我得到componentInstance
作为未定义的组件,您能上传您的相关代码以及昨天的更改吗?在我自己的代码中遵循相同的模式会产生一个已定义的组件noice!很高兴听到