未捕获的TypeError:this.props.data.map不是函数 - 带有ES6的React CommentBox Tutorial

时间:2016-09-25 20:26:28

标签: javascript reactjs ecmascript-6

我正在学习与ES6的React,并在基础示例上工作Facebook的教程将引导您完成。我已经成功地将所有内容放在一起(我使用Lux Framework构建了一个小型JSON API来为应用程序服务),但遇到了一个错误:

Uncaught TypeError: this.props.data.map is not a function

我知道这种情况正在发生,因为我的数据未在loadCommentsFromServer()中正确获取,但似乎无法弄清楚原因。希望推动正确的方向或解释我为什么做错了。

我已经为该文件提供了一个要点,因为当我包含整个文件时,格式化标记对于格式化很奇怪。

gist - App.js

gist - JSON being passed

1 个答案:

答案 0 :(得分:0)

这个问题是我在获取数据时没有正确地将context: this传递给AJAX调用,而在使用data设置状态时我需要进入this.setState({ data: data.data })属性,因为JSON API的格式化。

我发现的另一个问题是渲染时我没有使用<Comment />组件传递唯一键。

gist- Updated App.js

感谢@ erik-sn带领我朝着正确的方向前进。