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
相关推荐
摘星编程10 分钟前
React Native鸿蒙:BiometricAuth指纹解锁实现
react native·react.js·harmonyos
摘星编程18 分钟前
用React Native开发OpenHarmony应用:NFC读取标签数据
javascript·react native·react.js
GISer_Jing19 分钟前
AI驱动营销:业务技术栈实战(From AIGC,待总结)
前端·人工智能·aigc·reactjs
wdfk_prog31 分钟前
[Linux]学习笔记系列 --[drivers][base]map
linux·笔记·学习
浅念-33 分钟前
链表经典面试题目
c语言·数据结构·经验分享·笔记·学习·算法
石像鬼₧魂石1 小时前
Windows Server 2003 域控制器靶机搭建与渗透环境配置手册
linux·windows·学习
啥都会点的大秀2 小时前
声学仿真学习笔记
笔记·学习
好奇龙猫2 小时前
【AI学习-comfyUI学习-三十六节-黑森林-融合+扩图工作流-各个部分学习】
人工智能·学习
哈哈你是真的厉害2 小时前
小白基础入门 React Native 鸿蒙跨平台开发:实现一个简单的文件路径处理工具
react native·react.js·harmonyos
GIS之路2 小时前
GDAL 实现影像裁剪
前端·python·arcgis·信息可视化