如何在角标记中进行null / undefined安全字符串比较?

时间:2018-01-05 20:24:39

标签: angular production-environment

所以我有以下条件:

library(tsoutliers)
dataTS.out <- tso(dataTS, tsmethod = "auto.arima", args.tsmethod = list(allowdrift = FALSE, ic = "bic"), maxit = 5)
dataTS.out

条件:如果定义了someItem且描述不是空字符串。一般来说,我们可以说不等于某些X.

这适用于开发环境,当<span *ngIf="!someItem?.description==''"> 是,未设置时,以及描述是否为空时。但是在生产版本中,我收到以下错误:

someItem

我应该如何编写这样的条件以使其在生产版本中保持无效且有效?

1 个答案:

答案 0 :(得分:3)

.as-console-wrapper { max-height: 100% !important; top: 0; }运算符优先于!所以这基本上是==,它会将布尔值与不允许的字符串进行比较。

您可能想要使用(!someItem?.description) == ''。即使someItem?.description != ''未定义,这也会正常工作,因为它会比较 允许的someItem。但是,从undefined != ''开始,这可能无法达到您想要的效果。

最终,您可能希望使用undefined != '',如果*ngIf="!someItem?.description"未定义,没有someItem属性,或description是任何虚假值,包括空字符串。