42

Typescript は、JSX 構文のサポートを導入します。したがって、従来の *.ts ファイルではうまく機能するが、*.tsx ファイルではうまく機能しない式があります。

const f = <T1>(arg1: T1) => <T2>(arg2: T2) => {
   return { arg1, arg2 };
}

*.tsx ファイル内で動作させる方法はありますか?

4

2 に答える 2

46

これは、あいまいさの問題を解析した結果です。これを明確にする 1 つのことは、 に明示的な制約を追加することT1です。

const f = <T1 extends unknown>(arg1: T1) => {
    return { arg1 };
}

型パラメーターにはT1暗黙的に制約があるunknownため、この場合、コードは機能的に同等です。

このソリューションを使用すると、元の例の各アロー関数に適用できます。

于 2016-06-07T19:33:27.590 に答える