react-redux的基本用法
redux仅仅是一个状态管理的库,不能直接用于react,react-redux是redux作者封装的用于连接redux和react的库。
react-redux基本概念
1. UI组件
1. 只负责UI显示的组件,不包含业务逻辑
2. 没有状态
3. 所有数据都由(props)提供
4. 不使用任何Redux的API
2. 容器组件
1. 只负责管理数据和业务逻辑,不负责UI呈现
2. 有自己的状态
3. 使用Redux的API
3. 生成容器组件
react-redux提供了一些方法,来从UI组件生成容器组件,完整结构如下:
const VisibleTodoList = connect(
mapStateToProps,
mapDispatchToProps
)(TodoList)
其中的
connect 是连接组件
mapStateToProps 是将状态映射为UI组件的props
mapDispatchToProps 是将dispatch(action)映射为一个具名方法,传入props,供UI组件调用
4. 容器组件如何接收全局的State
react-redux提供了<Provider>组件来解决任意层级的容器组件接收State的问题。<Provider>的本质
是使用了React的context属性,来将全局的State传递到任意层级的子组件。<Provider>的具体用法如下:
render( <Provider store={store}> <App /> </Provider>, document.getElementById('root') )
<Provider>配合React-Router的用法
const Root = ({ store }) => (
<Provider store={store}>
<Router>
<Route path="/" component={App} />
</Router>
</Provider>
)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2017-08-20 node命令行开发