前提・実現したいこと
TypeScriptでtype定義している型の中にある型を取り出して利用したいです。
下記の items
型を使ってReact Hooksのstateの型の指定をしたいです。
下記の型定義ファイルは自動生成されたもので利用したいitems型のみコピーして貼り付けて利用しても再度上書きされるリスクや項目が変更されるリスクがあり避けたいと思っています。
参照という形で利用できれば非常に良いです。
よろしくお願い致します。
発生している問題・エラーメッセージ
プロパティ 'items' は型 '{ __typename: "ModelMovieConnection"; items: ({ __typename: "Movie"; id: string; title: string; description: string | null; thumbnailPath: string | null; contentPath: string | null; createdAt: string; updatedAt: string; } | null)[] | null; nextToken: string | null; } | null' に存在しません。ts(2339)
該当のソースコード
TypeScript
1const [movies, setMovies] = useState<ListMoviesQuery["listMovies"]["items"]>();
TypeScript
1export type ListMoviesQuery = { 2 listMovies: { 3 __typename: "ModelMovieConnection", 4 items: Array< { 5 __typename: "Movie", 6 id: string, 7 title: string, 8 description: string | null, 9 thumbnailPath: string | null, 10 contentPath: string | null, 11 createdAt: string, 12 updatedAt: string, 13 } | null > | null, 14 nextToken: string | null, 15 } | null, 16};
試したこと
useState<ListMoviesQuery.listMovies>();
と書いたところVS CODEのクイックフィックスから提案された修正を実行したら上記のように useState<ListMoviesQuery["listMovies"]
と変更されました。
しかし、その更に内側のitemsを参照しようとしたところ上記のようなエラーが発生してしまいました。
補足情報(FW/ツールのバージョンなど)
typescript: 3.9.7
node: 12.18.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。