質問

タイプスクリプトでの作業でタイプ推論の程度を理解しようとしています。次のコード例では、foobaz.esplodeの実装が有効なのですか?私の理解は、空のメソッドがvoidと一致するということです。

interface bar {
    horace: number;
}

interface baz {
    esplode: (string, number) => bool;
}

interface bazzer extends bar, baz { }

var foo: bazzer = {
    horace: 12,
    esplode: function () { }
}

var x = foo.esplode('crackers', 2);
.

ありがとう!

役に立ちましたか?

解決

見てくれてありがとう!

それは実際にはバグです。関数が文脈的にタイプされている場合は、意図された戻り型を表す(言語仕様のセクション4.9ごとに)戻り値の注釈が存在する場合は扱いますので、エラーがあるはずです。

私はすでにこのための修正を持っていますが、あなたは私たちのチームがそれを追跡できるようにコードプレックスサイトにバグを提出することができますか?私はこの午後の展開ブランチへの修正をプッシュすることができます。

もう一度ありがとう!

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top