Ссылка на объект, отправленный функции в компоненте React

109
14

В следующем компоненте, если я пытаюсь получить доступ к свойствам объекта myData внутри функции getMessage(), используя myData.gender я получаю неопределенную ошибку.

Если я попробую myData.myData.gender он будет работать. Почему это?

Когда я проверяю myData, входящий в функцию getMessage(), я вижу, что это объект и он содержит объект myData. Я смущен, почему объект myData помещается внутри другого объекта.

Интересно, что внутри моего компонента я могу получить доступ к свойствам напрямую, как вы можете видеть в строке <div>Hello {myData.firstName}</div>

Здесь мой простой компонент React:

import React, {Component} from 'react';

const MyComponent = ({myData}) => {

return(

<div>Hello {myData.firstName}</div>
<div>

{getMessage(myData)}

</div>
);
};

const getMessage(myData) => {

let output = "";

if(myData.Gender == "m") {
output = "<span>Enjoy the football game tonight!</span>";
}
else {
output = "<span>Enjoy your roses!</span>";
}

return output;

}

ChannelContent.propTypes = {
myData: PropTypes.object.isRequired
};

export default MyComponent;

спросил(а) 2016-11-20T04:45:00+03:00 4 года назад
1
Решение
-4

у вас есть опечатка либо в вашем вопросе, либо в коде:

попробуйте myData.gender === 'm' вместо myData.Gender == "m"

ответил(а) 2016-11-20T08:49:00+03:00 4 года назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема