关于hooks:hooks-中使用dva

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以及副作用都不要了。够简略不? 不会还不会吧?

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理