Recuperé un código de Stackblitz
No entiendo esta línea:
[style.height.px]="menu.active?submenu.scrollHeight: 0">¿Hay alguna manera de escribir esto con otra sintaxis?
Aquí está el código
<ul class="submenu" #submenu [style.height.px]="menu.active ? submenu.scrollHeight : 0"> <li *ngFor="let submenu of menu.submenu"> <a [href]="submenu.url">{{ submenu.name }}</a> </li> </ul>Puedes hacerlo con la directiva de atributo ngStyle :
[ngStyle]="{ 'height.px': menu.active ? submenu.scrollHeight : 0 }"Así que el código final se verá así:
<ul class="submenu" #submenu [ngStyle]="{ 'height.px': menu.active ? submenu.scrollHeight : 0 }"> <li *ngFor="let submenu of menu.submenu"> <a [href]="submenu.url">{{ submenu.name }}</a> </li> </ul>