TypeError: Невозможно прочитать свойство 'map' из неопределенного в React - PullRequest
0 голосов
/ 07 января 2020

Я получаю ошибку TypeError: Cannot read property 'map' of undefined. Ну, у меня есть объект массива, и я извлекаю ключи объекта, но когда я сопоставляю функцию, она выдает ошибку, может кто-нибудь помочь мне, как решить мою проблему. Я пытался, но мне не удалось, мне нужно решить это приложение.

Код

 const patientTabOptions = {
    titleOptions: [
      { value: "mr", label: "Mr" },
      { value: "ms", label: "Ms" },
      { value: "doctor", label: "Doctor" }
    ],
    ageGroup: [
      { value: "infant", label: "Infant" },
      { value: "child", label: "Child" },
      { value: "adult", label: "Adult" }
    ],
    GenderOptions: [
      { value: "male", label: "Male" },
      { value: "female", label: "Female" },
      { value: "others", label: "Others" }
    ],
    bloodGroup: [
      { value: "a+", label: "A+" },
      { value: "a-", label: "A-" },
      { value: "b+", label: "B+" },
      { value: "b+", label: "B+" },
      { value: "b-", label: "B-" },
      { value: "o", label: "O" },
      { value: "o-", label: "O-" },
      { value: "ab+", label: "AB+" },
      { value: "ab-", label: "AB-" }
    ],
    maritalStatus: [
      { value: "single", label: "Single" },
      { value: "married", label: "Married" },
      { value: "notDisclosed", label: "Not Disclosed" }
    ]
  };

 let patientKeys = Object.keys(patientTabOptions);

В функции рендеринга, когда я пытаюсь отобразить ее, выдается ошибка

 patientTabOptions &&
                    patientTabOptions.patientKeys.map((item) =>
                      console.log(item)
                    )

1 Ответ

3 голосов
/ 07 января 2020

Это потому, что ключ patientKeys не существует внутри вашего patientTabOptions объекта.

Если вы хотите перебирать ключи вашего объекта, вы должны использовать созданную вами переменную с именем patientKeys

patientTabOptions && patientKeys.map((item) => console.log(item))

Редактировать из комментариев:

patientTabOptions && Object.keys(patientTabOptions).map(key => patientTabOptions[key])

Но если вы хотите получить данные из указанного массива c, вы должны получить прямой доступ

const data = patientTabOptions.ageGroup
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...