Redux имеет строгий набор принципов, таких как Хранилище является единственным источником истины . Так что да, когда вы подключаете компонент к хранилищу Redux с помощью mapStateToProps
, у вас есть доступ к полному объекту состояния. но именно вы решаете, какая часть состояния нужна компоненту.
Например, в вашем магазине есть редуктор inventory
и редуктор cart
, оба из которых имеют массив items
как государственное значение. В mapStatetoProps
у вас есть доступ к обоим состояниям редукторов, но вы сами решаете, что нужно вашему компоненту. Вы можете подключиться к state.cart.items
или state.inventory.items
или к обоим, если хотите.
const mapStateToProps = (state) => ({
// it is you who decides what your component need from the store in order to function
// you can only select state.cart.items or state.inventory.items or both if you need
cartItems: state.cart.items,
inventoryItems: state.inventory.items
});