我已经根据Angular Material自己的stackbitz demo创建了一个basic TabGroup demo
当mat-tab-group
嵌套在mat-horizontal-stepper
中时,mat-tab
的内容在渲染视图/动画完成后消失。
在我的演示中,我模拟了在子组件中设置默认值,但也将其默认设置为父组件中的默认值(请参见第一个myData: number = 2;
),然后以100ms的延迟从父组件中的数据库中加载内容(请参见setTimeout(() => this.myData = 1,100)
。
我想基于从数据库返回的值来设置活动选项卡,但是我还需要确保始终有一个有效值传递给子组件,这就是为什么在父组件中默认使用该值。我还在代码中的ngOnInit()
中也隐藏了一些标签。
如果注释掉setTimeout(() => this.myData = 1,100)
,它将使用myData: number = 2;
呈现选项卡索引集,而不会出现问题。可能是选项卡动画期间的变化检测变得混乱了吗?
我还尝试了this suggestion,该方法不起作用。因此,现在我已经用尽了对Angular的了解!欢迎任何帮助!