如何在TypeScript中为getter设置初始值
我有一个getter来返回在另一个函数中计算的值。它有这样的形式:如何在TypeScript中为getter设置初始值
private get numErrors() {
return calculateErrors(key);
}
在我的html我有{{ $ctrl.numErrors }}
。我正在使用AngularJS。这呈现{{$ ctrl。 numErrors}},然后计算并显示数值数值。有没有一种方法可以让我在获得返回值之前初始显示0?
您可以通过ng-cloak
解决此问题。
但不是让numErrors()
作为getter直接返回你的其他函数的结果为什么不做这样的事情呢?在您需要的逻辑中调用calculateErrors()
并让它设置值。这将在您的模板上自动更新。
numErrors: number = 0;
calculateErrors(key) {
// Do calculation
numErrors = resultOfCalculation;
}
ng-cloak并没有完全解决问题,但现在我把它尝试捕捉块 – mysticalstick
考虑到它的数值,如果严格等于undefined
它不应该被选中,也可以是
private get numErrors() {
return calculateErrors(key) || 0;
}
或者
{{ $ctrl.numErrors || 0 }}
这不起作用,因为该函数不会返回一个错误,只需要一段时间来处理 – mysticalstick
问题和答案 - 他们两个 - 都不会说错误。 “过程的一段时间”应该是什么意思?如果它没有立即返回一个值(即该值被计算并可在下一个摘要中使用),则返回“0”。问题中的代码无法解释为什么它不起作用。 – estus
看它是否能帮助你http://stackoverflow.com/questions/12866447/prevent-double-curly-brace-notation-from-displaying-momentarily-before-angular-j – Diullei