ngSwitch是“属性指令”还是“结构指令”?

死侍

我对ngSwitch指令有点困惑-无论是'attribute指令'还是'structural指令'

属性指令写有方括号,例如[ngStyle],[ngClass]等(我们将其写为[ngSwitch],将其称为“属性指令”)。

结构化指令使用' aestrick '编写,例如* ngFor,* ngIf等(我们将案例编写为* ngSwitchCase =“ ...”,这意味着它是结构化指令)。

<div [ngSwitch]="colorValue">
    <p *ngSwitchCase="red">Red</p>
    <p *ngSwitchCase="blue">Blue</p>
    <p *ngSwitchCase="green">Green</p>
</div>

按照上面的代码,将ngSwtich归类为任一指令类别变得非常混乱!有人可以帮助我了解ngSwitch的指令类型吗?

j3ff

[ngSwitch]属性指令与组合使用*ngSwitchCase这是一个结构指令

Angular的文档中对此进行了明确的说明...

如果尝试设置*ngSwitchNgSwitch则会出现错误,因为它是属性指令,而不是结构指令。它更改了其伴随指令的行为。它不会直接接触DOM。

绑定到*ngSwitchCase*ngSwitchDefaultNgSwitchCaseNgSwitchDefault中,因为它们或者从DOM删除元素指令是结构性的指令。

https://angular.io/guide/template-syntax#the-ngswitch-directives

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章