自制NavBar。环境包含具有定义如下的下拉元素的列表:
{
title: 'Overview', isDropped: false, Links: [
{linkTitle: 'What is Hunter', linkRoute: '/whatishunter'},
{linkTitle: 'What is a Hard Problem', linkRoute: '/hardproblem'},
{linkTitle: 'Real World Applications', linkRoute: '/realapps'},
{linkTitle: 'Using Hunter', linkRoute: '/usingHunter'}
]
},
导航栏html会为该导航栏该部分中的每个下拉列表循环(ngFor);添加的leftdropdown被删除以显示正在发生的事情:
<div class="positionLeft" [ngStyle]="{'z-index': '2', 'height': '50px'}">
<div *ngFor="let leftdropdown of barContents.leftMenus">
<app-navdropdown [title]="[leftdropdown.title]" [isDropped]="[leftdropdown.isDropped]"
[links]="[leftdropdown.links]"></app-navdropdown>
added leftdropdown isdropped = {{leftdropdown.isDropped}}
</div>
“ leftdropdown”元素来自上面的环境列表。 component.ts是:
并且可以肯定的是,我可以手动将isDropped更改为true并显示“ if block”。 明显的错误是* ngIf正在反转isDropped表达式????
关于什么是误解或简单语法错误的任何线索?
感谢您的时间和建议。
查克(瑜伽士)
答案 0 :(得分:0)
感谢各种评论;我终于意识到我对方括号的困惑是关于表达的左或右。在左侧使用(或不使用)方括号会更改右侧的评估方式。 (我认为它们需要应用到右侧-错误)。
在仔细(并反复)查看angular.io中的属性绑定文档之后,以上内容对我很清楚。
感谢所有添加注释的人。