2017-10-17 118 views
0

我是Angular的新手。我在我的程序中使用了ngSwitch,但每次运行程序*ngSwitchDefault时都会执行而不是*ngSwitchCase。下面是代码:Angular * ngSwitchCase未执行

​​
+0

你需要使它成为一个字符串'“'真'''' –

回答

1

包裹*ngSwitchCase表达式为'',使他们strings。该比较将与===一起使用,因此它将比较stringstring。在你的情况下,它将找到名称为radiotext的成员,并获取它们的值,这些值是未定义的。

<span [ngSwitch]="selectedControl"> 
    <span *ngSwitchCase="'text'"> 
    <!--     ^----^ --> 
    <p>text is selected</p>    
    </span> 
    <span *ngSwitchCase="'radio'"> 
    <!--     ^-----^ --> 
    <p>radio is selected</p> 
    </span>   
    <span *ngSwitchDefault> 
    <p>Default value</p> 
    </span> 
</span> 
+0

它的工作原理,谢谢 –