[解決済み】Typescript: スプレッド型はオブジェクト型からしか作成できない
2022-02-17 16:28:42
質問
function foo<T extends object>(t: T): T {
return {
...t // Error: [ts] Spread types may only be created from object types.
}
}
githubにissueがあることは承知していますが、何が修正されて何が修正されていないのかがわからず、2695のopen issueがあるそうです。だから、ここに投稿しています。私は最新のTypescript 2.9.2を使っています。
上記のコードは動作しないのでしょうか?また、可能であればどのように修正すればよいでしょうか?
解決方法は?
TypeScript Version 3.2 で修正されました。参照 リリースノート .
汎用型での拡散はまだサポートされていないようですが、GitHubのissueにはそれに関するものがあります。 マイクロソフト/TypeScript#10727 .
今のところ タイプアサーション のように ジェフゲニ コメント :
function foo<T extends object>(t: T): T {
return { ...(t as object) } as T;
}
を使用することもできます。
Object.assign
は、適切な型定義を持っています。
function foo<T extends object>(t: T): T {
return Object.assign({}, t);
}
関連
-
[解決済み】Typescript : require文はimport文の一部ではない
-
[解決済み] eslintをtypescriptで使用する - モジュールへのパスを解決できない
-
[解決済み] Typescriptでオブジェクトのプロパティを結合する方法は?
-
[解決済み] TypeScriptの非同期関数でプロミスを返す
-
[解決済み] TypeScriptで文字列を数値に変換する方法とは?
-
[解決済み] TypeScriptでオブジェクトに動的にプロパティを割り当てるには?
-
[解決済み] TypeScriptのオブジェクトリテラルでの型定義
-
[解決済み] タイプスクリプトのレコードタイプとは何ですか?
-
[解決済み】TypeScriptのインターフェースと型について
-
[解決済み】TypescriptのArray<Type> VS Type[]について
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Typescriptで、! (エクスクラメーションマーク/バン)演算子でメンバを再参照するのは?
-
[解決済み】プロパティ 'value' が 'HTMLElement' 型の値に存在しない。
-
[解決済み] error TS2339: Property 'x' does not exist on type 'Y'.
-
[解決済み] TypeScriptでfetchを使う方法
-
[解決済み] TypeScript - Angular: 複数行の文字列
-
[解決済み] Object literal may only specify known properties" というエラーが発生するのはなぜですか?
-
[解決済み] モジュール 'module-name' の宣言ファイルが見つかりませんでした。'/path/to/module-name.js' は暗黙のうちに 'any' 型を持っています。
-
[解決済み] Typescript オブジェクトのインデックス付きメンバの型を強制する?
-
[解決済み] ジェネリックスを使用したTypescriptのarrow関数の構文はどのようになっていますか?
-
[解決済み] TypeScriptです。識別子 'IteratorResult' が重複しています。