香港专业教育学院尝试了几种论坛解决方案,但仍然很困惑。谢谢你的帮助...

我正在尝试通过采用最新帖子的user显示postCount发表的帖子总数。

我的问题是user尚未发布任何东西,而尚未创建this.props.user.myFeed[0].postCount的Redux道具来保存用户的帖子/提要。屏幕尝试加载,我得到"TypeError: undefined is not an object (evaluating 'this.props.user.myFeed[0]')"

香港专业教育学院尝试了几种解决方案,但是下面的简单代码不起作用是有原因的。

<Text>Posts: {(this.props.user.myFeed[0]) ? this.props.user.myFeed[0].postCount : 0 }</Text>

也尝试过以下方法:

<Text>Posts: {(this.props.user.myFeed[0] === undefined) ? this.props.user.myFeed[0].postCount : 0 }</Text>

如果商店是未定义的,它不应该只是0吗?

再次感谢!
-马特

最佳答案

由于您的myFeed是一个空数组,这意味着myFeed [0]返回错误。因此,您应该检查myFeed是否未定义才能继续。如果可能,还检查postCount。

    <Text>Posts: {(this.props.user.myFeed && this.props.user.myFeed[0]) ?
 this.props.user.myFeed[0].postCount : 0 }</Text>

关于javascript - React,Redux,TypeError:如果语句未定义,则该对象不是对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/61534604/

10-09 19:31