2017-04-03 8 views
0

別の関数で計算された値を返すゲッターがあります。TypeScriptでgetterの初期値を設定する方法

private get numErrors() { 
    return calculateErrors(key); 
} 

私のhtmlには、私は{{ $ctrl.numErrors }}があります。私はAngularJSを使用しています。これは{{$ ctrl。数値数値が計算されて表示される前に、数秒間、数値エラーが発生します。戻り値を取得する前に、最初に0を表示する方法がありますか?

+1

ことができることを考えると、それはあなたを助けることができるかどうかを確認http://stackoverflow.com/questions/12866447/prevent-double-curly-brace-notation-from-displaying-momentarily-before-angular-j – Diullei

答えて

0

ng-cloakでこれを回避する可能性があります。

ゲッターとしてnumErrors()を持っている代わりに、他の関数の結果を直接返すのはなぜですか? calculateErrors()があなたのロジックで呼び出され、必要なところで呼び出され、値が設定されます。これはテンプレート上で自動的に更新されます。

numErrors: number = 0; 

calculateErrors(key) { 
    // Do calculation 
    numErrors = resultOfCalculation; 
} 
+0

ng-cloakは完全に問題を解決していませんでしたが、今は試練でブロック – mysticalstick

-1

それが数値であり、それは厳密にundefinedに等しい場合、それをチェックすべきではない、それは

private get numErrors() { 
    return calculateErrors(key) || 0; 
} 

それとも

{{ $ctrl.numErrors || 0 }} 
+0

この関数はエラーを返さないため、処理に時間がかかります – mysticalstick

+0

質問とその答え - どちらもエラーについて何も言わないでください。 「処理するにはどうしたらいいですか」とはどういう意味ですか?値が直ちに返されない場合(すなわち、値が計算され、次のダイジェストで利用可能である場合)、代わりに「0」が返されます。問題のコードはなぜそれがうまくいかないのか説明できません。 – estus

関連する問題