如何在已填充的商店中获取数据以在render
函数中使用它?
例如:
ReactDOM.render(
<Provider store={store}>
<Layout/>
</Provider>,
document.getElementById('app')
);
在这里,我需要从已有数据的商店向Layout
组件发送数据。每次商店中有相应的变化时,是否可以发送更改的数据?
答案 0 :(得分:0)
提供者将商店放在React组件上下文中。然后在组件定义中使用@connect修饰符(在本例中为Layout)连接到商店并选择所需的数据。
connect从上下文访问存储并订阅更改,以便每次存储中的数据更改时重新呈现组件。你永远不应该通过道具来经营商店,这是不好的做法。您当然可以将连接的属性传递给子级,但绝不会将完整的存储传递给子级。
您在商店中放置的初始数据将在您的应用首次安装到DOM时呈现。之后的每次更改(用户表单提交)都会改变商店,您的组件将通过连接机制进行更新。
Redux文档编写得很好。我建议你仔细看看它们。还有很多关于Redux的免费教程,例如在egghead.io上。