1. ホーム
  2. ios

[解決済み] 警告 : 子コンテキストタイプに失敗しました。CellRenderer' に提供された 'number' 型の無効な子コンテキスト 'virtualizedCell.cellKey' は、 'string' を想定しています。

2023-04-09 16:12:21

質問

react 16.2 -> 16.3-alpha-1 と react-native 0.52->0.54 からアップグレードしたところ、シミュレータで上記のような警告が表示されるようになりました。

どのように解決すればよいのでしょうか?

keyExtractor が使用されているリスト コンポーネントのエラーを修正するには、コンポーネント (FlatList など) を更新して、keyExtractor が使用されるようにします。 文字列キー を .toString() で更新してください。 すべてのキーは文字列値でなければならなくなりました .

以下のように。

keyExtractor={item => item.index_id}

から

keyExtractor={item => item.index_id.toString()}

この変更は、keyExtractorのすべての使用に対する要件であるため、FlatListやActionSheetなどのReact-Nativeコンポーネントが含まれることになる。