我有一個getter來返回在另一個函數中計算的值。它有這樣的形式:如何在TypeScript中爲getter設置初始值
private get numErrors() {
return calculateErrors(key);
}
在我的html我有{{ $ctrl.numErrors }}
。我正在使用AngularJS。這呈現{{$ ctrl。 numErrors}},然後計算並顯示數值數值。有沒有一種方法可以讓我在獲得返回值之前初始顯示0?
我有一個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