Я не знаю содержимого вашего .ts
файла, но ваш код отлично работает у меня здесь:
https://stackblitz.com/edit/angular-sduuwm
Обратите внимание, что я определил свои массивы следующим образом:
parentMenu = [
{
Id: 1,
MenuTitle: "One",
},
{
Id: 2,
MenuTitle: "Two",
},
{
Id: 3,
MenuTitle: "Three",
}
];
childMenu = [
{
ParentMenuId: 1,
MenuTitle: "One quarter"
},
{
ParentMenuId: 1,
MenuTitle: "One half"
},
{
ParentMenuId: 2,
MenuTitle: "Two half"
},
{
ParentMenuId: 3,
MenuTitle: "Three half"
}
];
Однако, тем не менее, если бы я был вами, я бы лучше определил свои массивы так:
parentMenu = [
{
Id: 1,
MenuTitle: "One",
childMenu: [
{ MenuTitle: "One quarter" },
{ MenuTitle: "One half" },
]
},
{
Id: 2,
MenuTitle: "Two",
childMenu: [
{ MenuTitle: "Two half" },
]
},
{
Id: 3,
MenuTitle: "Three",
childMenu: [
{ MenuTitle: "Three half" },
]
}
];
и сделайте HTML так:
<a href="#">
<i class="fa fa-edit"></i> <span>{{pm.MenuTitle}}</span>
<span class="pull-right-container">
<i class="fa fa-angle-left pull-right"></i>
</span>
</a>
<ul class="treeview-menu" *ngFor="let cm of pm.childMenu">
<li>{{cm.MenuTitle}}</li>
</ul>
И вам не понадобится тест *ngIf
в вашем коде.