react-redux 的使用(一)
react-redux 的使用(一)
其实它的使用还是离不开 redux
它分为两部分,UI 组件和容器组件(注意,原有的store
文件内容不改变,并且在APP.js
渲染的是容器组件)
此时产生了一个大改变,就是在页面不再通过store
获取数据,而是this.props.xxx
容器文件代码如下:
import {connect} from 'react-redux'
import HelloUI from '../../componenet/hello'
export default connect(state => ({
number: state // 届时 props 属性上会多出一个 number 属性
}), dispatch => ({
add: data => dispatch({ type: 'add', data }) // 届时 props 属性上会多出一个 add 方法
}))(HelloUI)
App.js
文件代码如下
import Hello from "./container/hello";
import {store} from './store'
function App() {
return (
<div className="App">
<Hello store={store} />
</div>
);
}
export default App;
在页面显示或调用方法用this.props.xxx
就行
进阶
异步写法如下:
import {connect} from 'react-redux'
import HelloUI from '../../componenet/hello'
export default connect(state => ({
number: state
}), dispatch => ({
// 其实还和以前异步一样的写法,只不过挪到这里来了
add: data => dispatch((dispatch, getState, extraArgument) => {
setTimeout(() => {
dispatch({ type: 'add', data})
}, 2000)
})
}))(HelloUI)
这一路,灯火通明
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了