hooks 中应用dva
reacts hooks曾经问世很久了明天来记录下如何在hooks是应用dva,
家喻户晓函数是不能够是不能够应用修饰符润饰的,因为函数存在变量晋升问题。
所以大多数人有抉择再次掏出本人的redux,然而redux应用起来的确没有dva不便,那么上面就让咱们看看如何在hooks中优雅的应用dva吧!
废话不多说间接上代码!
index.js
import React from 'react';import { connect } from 'dva';import {Button} from 'antd';const mapStateToProps = (state)=> { return { home: state.home, }};const usePage = (props) => {const {home} = props; const btnClick = () => { const {dispatch} = props; dispatch({ type:"home/getList", payload: !home.likes }) }; return ( <div> <Button onClick={btnClick}>点击有惊喜</Button> <span>{home.likes ? 'true' : 'false'}</span> </div> );};export default connect(mapStateToProps, null)(usePage);
model.js
export default { namespace: 'home', state: { likes: null, }, effects: {}, reducers: { getList(state, {payload}) { return {...state, likes: payload}; }, },};
为了简略我连css以及副作用都不要了。够简略不? 不会还不会吧?