connect( state => ({ items: state.items, currentItem: state.currentItem }), (dispatch) => ({ fetchItems: bindActionCreators(fetchItems, dispatch) }) )(ShoppingListView)
function TodoList() { const items = useSelector(state => state.items); const dispatch = useDispatch(); const handleAddItem = () => { dispatch({ type: "CREATE_ITEM", payload: 'React-redux Hooks API is out!' }) }; return <> <ul> {items.map((item) => <li key={item.id}>{item.description}</li>)} </ul> <button onClick={handleAddItem}>Add Item</button> </> }
connect( state=> ({ items: state.items.data }), dispatch => bindActionCreators({ ...itemAcs }, dispatch) )
connect( state => ({ items: state.items }) )(ItemList)
connect( state => ({ items: state.items, currentItem: state.currentItem }), dispatch => bindActionCreators({addItem, setCurrentItem}, dispatch) )(ShoppingListView)