react hooks--useReducer用法

useReducer是useState的替代方案,我们可以用它来处理复杂逻辑的state。此外它还可以和useContxt结合实现Redux进行状态管理。

一、基础用法

const [state, dispatch] = useReducer(reducer, initialState, initializer);

state状态变量

dispatch用于触发reducer 函数

reducerreducer 函数,该函数接受stateaction两个参数

initialState状态的初始值

initializer选填值。用于惰性提供初始状态

二、具体案例

通过useReducer实现数字的递增和递减操作。

import React, { useReducer } from 'react';
import './index.less';

function counter(count: number, action: string) {
  switch (action) {
    case 'inc':
      return count + 1;
    case 'dec':
      return count - 1;
    default:
      return count;
  }
}

const UseReducerExample: React.FC = () => {
  const [count, dispatch] = useReducer(counter, 0);

  return (
    <div className="box-wrap">
      <div>当前数字:{count}</div>
      <div>
        <button onClick={() => { dispatch('inc') }} >
          数字+1
        </button>
        <button onClick={() => { dispatch('dec') }} >
          数字-1
        </button>
      </div>
    </div>
  );
};

export default UseReducerExample;

三、效果展示

感谢您读完本文!如果本文对您有帮助,请点个赞呗,您的点赞是对我最大的支持和认可!

我的公众号:大前端教程,欢迎关注,会定期更新前端知识,希望能帮到您。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值