TypeScriptサイトの "Using Type Parameters in Generic Constraints"に、以下のサンプルコードが示されています。しかし、次のエラーが発生しました:TypeScript:一般的な制約でタイプパラメータを使用する
'タイプU [keyof U]'は 'T [keyof U]'に割り当てられません。タイプ 'U' はタイプ 'T'に割り当てられません。 '
function copyFields<T extends U, U>(target: T, source: U): T {
for (let id in source) {
target[id] = source[id];
}
return target;
}
let x = { a: 1, b: 2, c: 3, d: 4 };
copyFields(x, { b: 10, d: 20 });
実際には、これはプレイグラウンドで実行されません。コードの何が間違っていますか?
驚くべきことに、ドキュメントのコードがコンパイルされません。この件についてhttps://github.com/Microsoft/TypeScript-Handbookレポで問題を提出することをお勧めします。 – JKillian
[issue](https://github.com/Microsoft/TypeScript-Handbook/issues/475)を投稿しました。 )と返信を得た。 –