私はこれにさまざまな角度から遭遇しましたが、現在私のコードは次のようになっており、次のエラーが発生します。
プロパティ 'albums'はタイプ 'never'に存在しません
Reactフックを使用していますが、data
で更新されたuseState
オブジェクトからエラーが発生します。data
にはプロパティalbums
定義する方法、またはこれを行う場所がわかりません。
import React, { useState } from 'react';
interface ArtistProps {
artistName: string,
}
const Artist: React.SFC< ArtistProps > = ({ artistName }) => {
const [data, setData] = useState(null);
return (
<>
<p>{artistName)}</p> // this is fine
<p>{data.albums}</p> // error here
</>
);
}
これを試して:
const [data, setData] = useState<null | {albums: any}>(null);
次に、次のようなdata
変数を使用します
data!.albums
!
は、値がnull
ではないことをTypeScriptに通知するためのものです。ただし、null
の値を明示的に確認することをお勧めします。 data ? data.albums : 'no data'
P.S.の代わりに {albums: any}
適切なインターフェースを追加します。