我正在编写一个代码,在视图中找到这个代码。据我所知,三元条件包含一个"?“然后用冒号":“分隔2组指令。我无法理解这个三元操作符是如何工作的,因为它有3个问号和一个冒号。
三元运算符语法:
var result = condition? if true do this : if false do this; 用角写的自定义代码:
<p>{{ myModal?.subTotal!=null ? '$'+myModal?.subTotal : '' }}</p>有人能解释一下这个三元条件是怎么写的吗?
发布于 2018-03-26 08:14:46
看看这部分- myModal?.subTotal != null
如果myModal是undefined or null,则返回false。否则访问它是subTotal属性,如果不是null返回true,则为false。
这和myModal && myModal.subTotal != null一样
有关更多信息,您可以看到Documentation。
发布于 2018-03-26 08:25:15
在这种情况下,第一个和最后一个问号不是三元运算符。
myModal?.subTotal!=null ? '$'+myModal?.subTotal : ''
(condition ) ? (if ) : (else)详情请参见) and null property paths。
角安全导航操作符(
?.)是一种流畅、方便的方法,可以防止属性路径中的空值和未定义值。
https://stackoverflow.com/questions/49486802
复制相似问题