【发布时间】:2016-04-07 02:53:06
【问题描述】:
我现在的数据流是这样的,
BookContainer (Passes in props needed by book form, eg drop down selection options)
|_ BookModal (Handles the form submission)
|_ CreateBookForm (Contains form tag and input fields, Dumb Component)
我面临的问题是当我的 BookModal 处理表单提交时,一切都顺利进行,但是我收到此错误 this.props.books.map is not a function。 books 道具是从BookContainer -> BookModal -> CreateBookForm 传入的,用于填充我必须从中选择的书。从CreateBookForm 提交表单后BookModal 的返回响应是请求成功还是失败的Promise。
我不确定我当前的传递数据流是否正确,但到目前为止所有数据都正确显示。只有在我提交表单后,我才会收到此错误。 我使用https://github.com/erikras/react-redux-universal-hot-example 作为我的样板。 任何建议或想法表示赞赏!谢谢。
【问题讨论】:
-
如果浏览器说它不是一个函数 - 它不是一个函数。因此有一个建议:要么不调用它,要么传递一个正确的数组(或具有
.map()方法的东西)。 -
问题是,当我提交表单时,props 已经存在了。而且我只希望道具保持不变,并且在提交表单后不会获得任何新道具。然而,它似乎在每次提交表单后都要求新的道具。
-
没有什么是“要求”任何东西——它是“推”而不是“拉”。所以是父组件没有传递所需的属性。
-
对不起,我真的不明白你的意思是父组件没有传递所需的属性?我的父组件已经传递了表单正确呈现所需的属性。表单已正确呈现。
-
不。反应的整个想法是没有“以前的时间” - 你每次都从头开始渲染一切。
标签: javascript reactjs redux