【发布时间】:2021-06-08 15:27:54
【问题描述】:
我有一个内置于 react-redux 的模块 A。 A 是父组件名称,看起来有点像
const app = (
<Provider store={store}>
<A />
</Provider>
);
ReactDOM.render(app, document.getElementById('id'));
在组件A里面有一个组件C.js,它有一个connect函数
A.js
render() {
return (
<div>
<C />
</div>
);
}
C.js
render() {
return(<div>SomeCode</div>
}
export default connect(mapStateToProps, mapDispatchToProps)(C);
还有另一个 B.js 文件,它是一个 ReactComponent(这里没有使用 redux)。它有自己的状态。
我想在 B 的渲染方法中使用组件 A,类似于
import A from '/path'
render() {
return (<A/>)
}
执行此操作时出现错误。
在“Connect(C)”的上下文中找不到“store”。 要么将根组件包装在 a 中,要么将自定义的 React 上下文提供程序传递给 以及连接选项中与 Connect(C) 对应的 React 上下文消费者。
任何帮助表示赞赏。
【问题讨论】:
-
您没有提供 C、A 和 index.js 的代码。
-
添加了@RajdeepDebnath
-
在c组件中你没有定义
mapStateToProps, mapDispatchToProps。 -
是的,那些已经在那里了。它是一个预先存在的工作代码。
-
您是否偶然使用了第三方渲染器,例如绘制图形?那些经常打破上下文。
标签: javascript reactjs redux