Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。132件21再現コードは最小限にシンプルにしたので、意味自体はありません。});上のコードはざっと通したい内容です。似たようなPropsを持つ(上の例ではdata)、複数のコンポーネントがあり、それを作成するmakeという関数があるという状態です。割り当てることはできません。ts(2322)」というエラーが出てくるのですが、解消できるような型をanyを使わずに書くことができません。通るような書き方、またはそもそもこのようなことができないのかを教えてください。opt(Json);という感じのことがやりたいのですが、不必要に型が複雑になり(しかも通っていない)ので、上のように書いた感じです。こちらの方が答えやすいとかあれば、こちらに答えていただいても構いません。票1とりあえず質問で提示されているコードのコンパイルが通るものを考えてみます。TS2322が吐かれる理由はエラーメッセージにも表示されている通り、「Tはdata以外のプロパティを持ち得る(が、dataしか指定されていない)」ため。いうことはPropsのキーとして使えるものを制限できるようにすればいいのでは?というのがまず案1。試行錯誤の結果こんなものが生まれました。なんとも香ばしい...でもコードがおかしいときに正しくコケるのか自信がない上に(一応試したので大丈夫そうですが)、make<ParaProps>とかわざわざ書く必要がない気がしてきました。Propsのキーが固定されているのであればその部分だけGenerics使うべきなのでは!?ということで以下のようなものでも要件が満たせそう。});そこそこスッキリした気がします。});(深夜テンションで書いたコードなのでいろいろと怪しいところがあるかもしれません。コンパイルを通すことができました。これが良いとも言い切れませんが、それでもコンパイルが通って満足です。TypeScriptのgenerics、もうちょっと詳しくなりたいものですね。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。