React 学习——zustand使用

1、安装zustand;命令: npm install zustand

注意:

  1. 函数参数必须返回(return)一个对象,对象内部编写状态数据和方法
  2. set 是用来修改数据的专门方法必须调用他来修改数据;两种语法(在代码中有注释)
javascript 复制代码
import { create } from 'zustand'

// 创建store
const useStore = create(set=>{
  return {
    count: 0,
    add:()=>{ set(state => ({ count: state.count + 1 })) },
    // sub:()=>{ set(state => ({count: state.count - 1})) }, //第一种语法,修改老数据的场景;理解为在上一个值的情况下计算
    sub:()=>{set({count:100})}//第二种 参数直接是一个对象;理解为直接赋值
  }
})
// 绑定store到组件 useStore解构拿到数据和修改数据的方法
const App = () => {
  const { count,add,sub } = useStore();
  return (
    <div className="home">
      <button onClick={add}>+</button>
      <span>{count}</span>
      <button onClick={sub}>-</button>
    </div>
  )
}
export default App
相关推荐
阿蓝灬12 小时前
clientWidth vs offsetWidth
前端·javascript
一代明君Kevin学长12 小时前
快速自定义一个带进度监控的文件资源类
java·前端·后端·python·文件上传·文件服务·文件流
4Forsee12 小时前
【Android】动态操作 Window 的背后机制
android·java·前端
用户904438163246012 小时前
从40亿设备漏洞到AI浏览器:藏在浏览器底层的3个“隐形”原理
前端·javascript·浏览器
d111111111d12 小时前
STM32得中断服务函数,为什么不能有返回值
笔记·stm32·单片机·嵌入式硬件·学习
小二李12 小时前
第12章 koa框架重构篇 - Koa框架项目重构
java·前端·重构
鸡吃丸子12 小时前
React Native入门详解
开发语言·前端·javascript·react native·react.js
阿蒙Amon12 小时前
JavaScript学习笔记:12.类
javascript·笔记·学习
qq_4287232412 小时前
英语歌10个月之前启蒙磨耳朵
前端
光影少年12 小时前
PostgreSQL数据库学习路线
数据库·学习·postgresql