这段代码是什么意思'true <=> false'

时间:2019-09-09 06:46:27

标签: javascript angular typescript

我今天看到了这段代码true <=> false。 但是我不知道这个表达式,我也不明白这段代码是如何工作的。

请帮助我理解此代码。

顺便说一下,这段代码是在ionic 4的控制页面动画中这样编写的。

export const FeedOut = trigger('state', [
  state('false', hiddenStyle),
  state('true', showStyle),
  transition('true <=> false', animate('300ms ease-in')),
  transition(':leave', animate(400, hiddenStyle)),
]);

谢谢

1 个答案:

答案 0 :(得分:1)

此代码定义了transition animations in Angular。它定义了一个称为'state'的触发器,该触发器定义了两种状态。分别称为'false''true'这与实际的javascript布尔值falsetrue无关,这就是编写此代码的人决定如何调用它们的方式。实际上,您可以更改为更具描述性的内容,例如'hiddenState''shownState'

然后,它定义了状态之间的转换,告诉角度转换既适用于两种方式,也适用于从'false''true'  或从'true''false'

那么您可能有一些写着[@state]="..."的html代码。 如果其中包含字符串'false'和/或'true',并且您已决定如上所述更改状态的名称,则也必须在此处更改状态。 我也建议将单词'state'更改为'mytrigger',以免引起混淆。 .ts文件和.html文件中都需要对此进行更改

编辑:实际上,如今Angular似乎在解析布尔值,因此您可以简单地使用状态名称“ true”和“ false”,然后让Angular评估html内部的真实性而无需转换为字符串