ホームページ  >  に質問  >  本文

React: オブジェクトの配列へのインデックスとして状態を使用すると、チェックしたにもかかわらず未定義が返される

私は状態を持っており、それをオブジェクトの配列へのインデックスとして使用します。そのオブジェクトを小道具として他のコンポーネントに渡すとき。チェックを入れてもエラーが発生します:

リーリー

コンポーネント:

リーリー
P粉481035232P粉481035232221日前341

全員に返信(1)返信します

  • P粉642920522

    P粉6429205222024-04-04 12:28:17

    ここに 3 つの解決策があります:

    1. TestingTwo の数値タイプを数値 | 未定義に更新します。

    2. 別の解決策は次のとおりです:

    3. (番号が常に必要になることがわかっている場合に推奨) 次の場所からインターフェイスを更新します:

      インターフェースメニュー {ItemNumber?:数値;項目文字列? : 弦; }### に:###

      インターフェイス メニュー {ItemNumber: 番号;項目文字列? : 弦; }######

      ItemNumber のオプションを削除

      ?

    2 番目の質問を更新

    ステータスの設定でも同じ問題が発生します。インターフェイスではステータスがオプションのフィールドになっています。

    ?
    1. を削除することで必須にできます。

      OnClick={() => TestMenu[activeMenu]?.setState()
    2. < setState が存在するかどうかを確認するために疑問符を更新しました
    3. < 更新为检查 setState 是否存在的问号

      最終編集

    最後の部分を取得するには、次のコードを追加するだけです:

    OnClick={() => TestMenu[activeMenu]?.setState(1)

    エラーの理由は、setState に値を渡していないことです

    返事
    0
  • キャンセル返事