zustand状态管理工具(react)

这篇具有很好参考价值的文章主要介绍了zustand状态管理工具(react)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

分别创建文件continue.js、shoes.js

1、continue.js

import create from 'zustand'
import { persist } from 'zustand/middleware'


export default create(
  persist(
    (set) => ({
      counter: 12,
      incrementer: () => set((state) => ({ counter: state.counter + 1 })),
      decrementer: () => set((state) => ({ counter: state.counter - 1 }))
    }),
    {
      name: 'myStore' // 持久化状态的标识符,用于存储在 localStorage 或其他存储中
    }
  )
)

2、shoes.js文章来源地址https://www.toymoban.com/news/detail-822751.html

import create from 'zustand'

const useStore1 = create((set) => ({
  count: 12,
  increment: () => set((state) => ({ count: state.count + 1 })),
  decrement: () => set((state) => ({ count: state.count - 1 }))
}))

export default useStore1

项目中使用

import React from 'react'
import useStore1 from '@/zustandStore/shoes.js'
import useStore2 from '@/zustandStore/continue.js'
import styles from './index.module.scss'


export default function index() {
  const { count, increment, decrement } = useStore1()
  const { counter, incrementer, decrementer } = useStore2()


  return (
    <div className={styles.tableBox}>
      <div>
        普通的值:{count}
        <button onClick={() => increment()}>新增</button>
      </div>
      <div>
        长保存的值(localStorage):{counter}
        <button onClick={() => incrementer()}>新增</button>
      </div>
    </div>
  )
}

到了这里,关于zustand状态管理工具(react)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Vue最新状态管理工具Pinia——彻底搞懂Pinia是什么

    知识专栏 专栏链接 Vuex知识专栏 https://blog.csdn.net/xsl_hr/category_12158336.html?spm=1001.2014.3001.5482 Vuex官方文档 https://vuex.vuejs.org/zh/ Pinia官方文档 https://pinia.web3doc.top/ 最近在 前端的深入学习过程 中,接触了与 状态管理 相关的内容,涉及到 与vue2适配的vuex 和 与vue3适配的pinia ,因此

    2024年02月03日
    浏览(35)
  • React-Admin后台管理模板|react18+arco+zustand后台解决方案

    基于 react18.x+vite4+arco-design 自研中后台管理系统解决方案 ReactAdmin 。 react-vite-admin 基于vite4搭建react18.x后台管理项目。使用了 react18 hooks+arco.design+zustand+bizcharts 等技术实现权限管理模板框架。 支持暗黑/亮色主题、i18n国际化、动态权限鉴定、3种布局模板、tab路由标签栏 等功能

    2024年02月08日
    浏览(82)
  • Vue中的Pinia状态管理工具 | 一篇文章教会你全部使用细节

    Pinia(发音为/piːnjʌ/,如英语中的“peenya”)是最接近piña(西班牙语中的菠萝)的词 ; Pinia开始于大概2019年,最初是 作为一个实验为Vue重新设计状态管理 ,让它用起来适合组合式API(Composition API)。 从那时到现在,最初的设计原则依然是相同的,并且目前同时兼容Vue2、

    2024年02月11日
    浏览(27)
  • 第n+2次安装前端环境-nvm管理包工具-配置react环境

    我之前电脑实在是没办法用nvm搭建前端环境!恼火,只能推倒重来了。 首先就先去将自己的电脑里面的原来的nvm软件删除了。除此之外还要看看有没有之前单独安装过nodejs的,如果之前单独安装过那也要删除掉。 今天我就是看到自己的电脑友nvm,以为能用,于是通过nvm切换不

    2024年02月09日
    浏览(27)
  • Vue2向Vue3过度Vue3状态管理工具Pinia

    Pinia 是 Vue 的专属的最新状态管理库 ,是 Vuex 状态管理工具的替代品 后面在实际开发项目的时候,Pinia可以在项目创建时自动添加,现在我们初次学习,从零开始: 使用 Vite 创建一个空的 Vue3项目 按照官方文档安装 pinia 到项目中 定义store 组件使用store Pinia中的 getters 直接使

    2024年02月11日
    浏览(33)
  • Node.js 版本管理工具 n 使用指南

    Node.js 版本更新很快,目前 node v20.x 已经发布,我们在使用时避免不了会需要切换不同的 Node.js 的版本来使用不同版本的特性。 所以就出现了像 windows 上的 nvm ,MacOS 上的 n 工具,本文就介绍一下如何使用 n 管理 Node.js 的版本。 使用 Brew 安装时,未安装可以参考 Brew 官网安装

    2024年02月16日
    浏览(39)
  • react js自定义实现状态管理

    和源码可能不同,我没看过源码,只是实现一下 不足的是,还是需要forceUpdate 实现模块化

    2024年01月18日
    浏览(24)
  • 【Node.js学习 day5——包管理工具】

    包是什么 包(package),代表了一组特定功能的源码集合 包管理工具 管理包的应用软件,可以对包进行下载安装,更新,删除,上传等操作 借助包管理工具,可以快速开发项目,提升开发效率 常用的包管理工具 下面列举了前端常用的包管理工具 · npm · yarn · cnpm 搜索包的方

    2024年02月01日
    浏览(40)
  • Node【工具 01】Node Version Manager nvm安装使用(Node.js版本管理工具)

    非专业前端开发工程师在构建项目时遇到如下问题: 懵了,一台电脑安装多个JDK版本我们是常遇到的,前端就不知道怎么处理了,幸亏有了 nvm 。使用它可以简单解决上面的问题: nvm 是 Node.js 的版本管理工具(Node Version Manager)。它允许在同一台计算机上同时安装和管理多个

    2024年02月04日
    浏览(75)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包