我对React.js有一些问题,这是我的代码:
import React from 'react';
import { createStore } from 'redux';
import { Provider } from 'react-redux';
import App from './containers/App';
import todoApp from './reducers';
let store = createStore(todoApp);
let rootElement = document.getElementById('root');
React.render(
<Provider store={store}>
{() => <App />}
</Provider>,
rootElement
);
运行页面,它说:
失败的propType:为Provider
提供的属性children
无效,应为单个ReactElement
这是我安装的相关节点模块的列表:
- React15.0.1
- react-redux 4.4.5
- Redux 3.4.0
实际上,我目前正在学习React与Redux,所以很难我应该怎么做.我只是按照网站上的教程(我可以给予一个链接,但它不是英语)但它只是不工作与错误消息.正如我搜索,有人说react和react-redux的升级版本,但我安装了最新版本.任何建议将非常感谢它.
4条答案
按热度按时间sf6xfgos1#
根据文档,你可以只使用一个普通的React元素,而不是
<Provider />
中的函数。因此,只需将代码更改为
我认为这在react@0.14之后已经改变了。
mccptt672#
原来的问题有一个错别字。你的回答是正确的,在正确的语法。
但是,直接原因是
<App />
需要在单独的行上。如果你把它和
<Provider store={store}>
放在同一行,React/Redux会尝试做更多的事情。e5nqia273#
我被带到这里,我只是忘记了提供一个 prop 。我会说,确保你提供了你的组件正在使用的所有 prop ,并且应该修复它。
epfja78i4#
我有同样的错误,但它是在一个覆盖的情况下...解决方案,为我工作的只是删除之间的白色组件 prop 。
例如:
在上面的isvisible prop和overlaystyle之间有白色,同样删除了,错误也消失了。