这是服务器代码还是应用程序代码的问题?
在服务器上呈现我的应用程序时,我得到和提供者元素的不变错误。 错误是Invariant Violation: React.Children.only expected to receive a single React element child.
我也得到这个警告Warning: Failed prop type: Invalid prop
supplied to Provider, expected a single ReactElement. in Provider
数组Warning: Failed prop type: Invalid prop
子of type
supplied to Provider, expected a single ReactElement. in Provider
supplied to Provider, expected a single ReactElement. in Provider
const store = createStoreWithMiddleware(reducers); const provider = react.createElement(Provider, { store: store }, RouterContext); const ReactApp = renderToString(provider); const reactRouter = require('react-router'); const RouterContext = reactRouter.RouterContext;
<Provider>
组件只接受一个元素作为其子元素。 你可以改变你的代码来传递一个元素,而不是一个数组:
const RouterContext = react.createElement(reactRouter.RouterContext, renderProps); const provider = react.createElement(Provider, { store: store }, RouterContext);