2

私は次の機能を持っています:

    $('td:eq(' + iColumn + ') input', oSettings.oApi._fnGetTrNodes(oSettings))
        .each(function () {
            aData.push(this.value);
         });

typescript では、次のようなメッセージが表示されます。

Error   3   Function declared a non-void return type, but has no return expression  

このメッセージが表示されるのはなぜですか? 「return true」と言ってメッセージを解決できます。これには常に戻り値の型を指定する必要がありますか?

4

1 に答える 1

3

typescript リポジトリ.each()のファイルの署名は次のとおりです。jquery.d.ts

each(func: (index: any, elem: Element) => JQuery);

jQueryのドキュメントには、

false を返すことで、コールバック関数内からループを停止できます。

これは、これjquery.d.tsが間違っていることを意味します。

Boris Yankov のリポジトリから更新版を取得すると、次のようになります。

each(func: (index: any, elem: Element) => any);

このフォームでは、何でも返品することも、何も返品しないこともできます。

于 2012-11-18T10:48:10.233 に答える