0
在下面的组件中,如果我尝试访问getMessage()
函数中的myData对象的属性,使用myData.gender
,我得到一个未定义的错误。发送到React组件中的函数的引用对象
如果我尝试myData.myData.gender
它的作品。这是为什么?
当我检查myData进入getMessage()
函数时,我看到它是一个对象,它包含一个myData对象。我很困惑为什么myData对象放置在另一个对象内。
有趣的是,我的组件里面,我可以直接访问属性,你可以在该行<div>Hello {myData.firstName}</div>
这里是我的简单的阵营看成分:
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;
为什么downvote?在你的代码中,你试图检查'(myData.Gender ==“m”)',而在你提到的'myData.gender'中使用小写'g'。 –