javascript - 向 'Failed propType: Invalid prop ` 提供的 React 错误 `Provider` children,需要一个 ReactElement'

标签 javascript reactjs redux react-redux

我对 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
);

然后运行该页面,它说:

Failed propType: Invalid prop children supplied to Provider, expected a single ReactElement

这是我安装的相关节点模块的列表:

  • react 15.0.1
  • react-redux 4.4.5
  • 终极版 3.4.0

其实,我目前正在学习 React with Redux,所以我不知道该怎么办。我只是按照网站上的教程进行操作(我可以提供一个链接,但它不是英文的),但它无法处理该错误消息。 当我搜索时,有人说升级版本的 react 和 react-redux,但我安装了最新版本。 任何建议将不胜感激。

最佳答案

根据 the doc , 你可以只使用普通的 React 元素而不是 <Provider /> 中的函数.

因此,只需将您的代码更改为

<Provider store={store}>
    <App />
</Provider>

我认为自 react@0.14 以来这已经改变了。

关于javascript - 向 'Failed propType: Invalid prop ` 提供的 React 错误 `Provider` children,需要一个 ReactElement',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36735397/

相关文章:

javascript - 根据格式过滤数组项

javascript - 如何在 smarty 部分循环中使用 javascript 变量

javascript - 火力地堡 : Querying data inside an unknown name key (child inside another child)

javascript - 使用 Q.promises : how to catch an async throw?

javascript - 获取http://localhost:8080/dist/bundle.js net::ERR_ABORTED 404(未找到)

当状态变为 true 时,React 中的 CSS 转换不起作用

reactjs - 实体中的 Redux UI 状态

javascript - 根据 javascript 中的元素 id 在加载时删除和添加类

reactjs - 在 react-typescript 项目中创建后端 typescript 模块

javascript - 带有 redux 和 React 的 webpack-dev-server 阻止了我的输入