如何在 Angular 中创建动态菜单

How to create dynamic menus in Angular

我正在尝试在 Angular(9) 中创建动态的嵌套菜单,紧随 this link。

我不知道缺少什么,出现以下错误。

我的代码在stackblitz。 TIA.

这里的问题是 menu.childMenu,即 ViewChild,在将其传递给 matMenuTriggerFor 指令时尚未初始化。

简单的解决方法是告诉 Angular 在 ngOnInit 之前初始化它,方法是使用 @ViewChild 装饰器中的 static: true 选项:

@ViewChild('childMenu', { static: true }) public childMenu;

Forked Stackblitz