2016-11-14 21 views
0

私は、コンシューマをパラメータとするメソッド(forEachEntity)にインターフェイスを渡そうとしています。Typescript:ラムダ式のインターフェイスに渡す

インターフェイス:メソッドが呼び出されて

export interface Consumer<T> { 
    accept(t: T): void; 
} 

cell.forEachEntity = (consumer: Consumer<E>): Consumer<E> => { 
    return null; 
} 

は、この呼び出しはエラーをスローしませんが、私はそれリターンにするかを把握することはできません。私はtypescriptのラムダ式について多くの資料を見てきましたが、まだ理解していません。

+0

何を返しますか?あなたのコードで呼び出しが行われていません。 – toskv

+0

return文がなければ何かを返さなければならないと言います。 – Avahe

+0

2番目の 'Consumer 'が戻り値の型です。 Colon after function headerは、ラムダ式であっても、TypeScriptで戻り値の型を定義するための構文です。 – sdemurjian

答えて

0

消費者に何かをしてください(または新しいものを作るなど)。

cell.forEachEntity = (consumer: Consumer<E>): Consumer<E> => { 
    consumer.accountBalance += 100; 
    return consumer; 
    //or whatever your app is supposed to be doing... 
} 
関連する問題