角(v5.2.10)小吃吧
-| 简介|-
我有一个Angular组件(我们称之为“父母”),它初始化了一个名为的Angular材质Snackbar snackBar。SnackbarMessage传入的是,另一个组件的模板包含快餐栏标记。snackBar.openFromComponent(SnackBarMessage)在这种情况下,使用是必要的,因为我不仅仅需要在小吃栏中使用纯文本(例如标记,单击事件等),snackBar.open(message, action)而这还不够。
-| 代码|-
“父项”组件:
@Component({
selector: 'app-parent',
templateUrl: './parent.component.html'
})
export class Parent implements AfterViewInit {
public constructor(public snackBar: MatSnackBar) { }
public ngAfterViewInit(): void {
this.snackBar.openFromComponent(SnackbarMessage);
}
public dismissSnackbar(): void {
this.snackBar.dismiss();
}
}
Run Code Online (Sandbox Code Playgroud)
“ SnackbarMessage”组件:
@Component({
selector: 'app-snackbar-message',
templateUrl: './snackbar-message.html'
})
export class SnackbarMessage { }
Run Code Online (Sandbox Code Playgroud)
“ snackbar-message.html”标记:
<p>(Snackbar message)</p>
<button type="button" (click)="dismissSnackbar();">Dismiss</button>
Run Code Online (Sandbox Code Playgroud)
-| 问题|-
在导入的SnackbarMessage模板(snackbar-message.html)中,我需要调用Parent组件的dismissSnackbar();,我们如何使用此Angular应用程序的当前封装来做到这一点?