#react-redux是什么#
redux是一个独立专门用于做状态管理的JS库(不是react插件库)
它可以用在react、angular、vue等项目中,但基本与react配合使用
作用:集中式管理react应用中多个组件共享的状态
简单的说:react-redux 是基于 redux二次封装的库,提供了hooks相关的api。
#react-redux的api方法#
1:useDispatch
提供 dispatch(action) 方法更新 state,使用场景
import { connect, useDispatch, useSelector } from 'react-redux';
通过传递函数的使用方式
// action
export const updateNum = (payload) => {
return {
type: 'aaa',
payload
}
}
dispatch(updateNum('需要传递的值'))
直接修改状态:
dispatch({type: '', data: {}})
#useStore()和 useSelecter()区别#
通过useStore()获取的 getState() 只会获得当前时刻的 redux state,之后state 更新并不会导致这个方法被再次调用。
useSelecter()获取 getState()会重新渲染。