2017-12-22 14 views
1

オブジェクトの配列にreduceを使用して数値を生成しようとしています。{{ (unit.activeLease$ | async)?.openReceivables.reduce((sum, receivable) => sum + receivable.balance, 0) | currency:'USD'}} しかし、開発者ツールでは、文の先頭を指すエラーParser Error: Missing expected)が発生しています。内部に機能を持たせることはできませんか?DOMの内挿法を使用する

+0

あなたはこれを試すことができます:観測可能activeLease$は例えば、テンプレートにそれを暴露する前に、事前に処理されなければならない 'constの減速=(、債権合計)を定義=>コンポーネントのクラスの合計+ receivable.balance'、テンプレート内で '.reduce(reducer、0)'を呼び出します。 – ConnorsFan

答えて

2

角型コンポーネントテンプレートでは、関数は使用できません。その逆を行うには、JITコンパイルモードでevalが必要です。

コンポーネントクラスはコードが属する場所です。テンプレートで使用するには、関数をコンポーネントメソッドとして定義する必要があります。

コンポーネントテンプレートに長いコードが必要な場合は、リファクタリングする必要があることを示しています。

balance$ = activeLease$.map(openReceivables => 
    openReceivables.reduce((sum, receivable) => sum + receivable.balance, 0) 
) 
関連する問題