1. ホーム
  2. typescript

[解決済み] ジェネリックスを使用したTypescriptのarrow関数の構文はどのようになっていますか?

2022-03-21 08:33:09

質問

タイプスクリプト・ハンドブックには、現在、矢印関数に関する記述はありません。 通常の関数 は、この構文で一般的に型付けすることができます。 の例です。

function identity<T>(arg: T): T {
    return arg;
}

アロー関数の構文を教えてください。

どのように解決するのですか?

言語仕様書ではP64fにこうあります。

T > ( ... ) => { ... という形式の構成体です。として解析される可能性があります。 型パラメタまたは型アサーションを持つ矢印関数式 を型パラメータを持たない矢印関数に適用した。として決議されています。 前者

の例です。

// helper function needed because Backbone-couchdb's sync does not return a jqxhr
let fetched = <
           R extends Backbone.Collection<any> >(c:R) => {
               return new Promise(function (fulfill, reject) {
                   c.fetch({reset: true, success: fulfill, error: reject})
               });
           };