当前位置: 首页 > news >正文

VueUse(中文)——核心函数:State相关函数

  • VueUse官方地址

一、createGlobalState

  • 将状态保持在全局范围内,以便跨Vue实例重用

1、没有持久性(存储在内存中)

  • 例如:
    在这里插入图片描述
  • 或者
    在这里插入图片描述

2、持久性存储

  • 使用useStorage()存储在localStorage:
  • 例如:
    在这里插入图片描述
  • 组件使用:
    在这里插入图片描述

二、createInjectionState

  • 创建可以注入到组件中的全局状态

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

三、createSharedComposable

  • 使一个可组合函数可用于多个 Vue 实例。
    在这里插入图片描述

四、useAsyncState

  • 响应式异步状态,多与axios结合使用进行网络请求
    在这里插入图片描述

五、useDebouncedRefHistory

  • useRefHistory 的简写,带有防抖和过滤
  • 当计数器的值开始改变时,该函数在1000ms后对计数器进行快照。
    在这里插入图片描述

六、useLastChanged

  • 记录最后一次变更的时间戳
    -

七、useManualRefHistory

  • 当调用commit()时,进行跟踪ref的更改历史,还提供撤消和重做功能。
  • useRefHistory的区别就是useRefHistory是自动跟踪ref的更改历史,而useManualRefHistory是手动跟踪。
    在这里插入图片描述

八、useRefHistory

  • 记录一个ref的变更记录

1、使用

  • 跟踪 ref 的更改历史,还提供撤消和重做功能
    在这里插入图片描述

  • 在内部,watch用于在ref值被修改时触发历史点。

  • 这意味着历史点在同一个tick中异步地触发批量修改。
    在这里插入图片描述

  • 可以使用undo将 ref 值重置为最后一个历史点。
    在这里插入图片描述

2、Objects / arrays

  • 使用对象或数组时,由于更改它们的属性不会更改引用,因此不会触发提交。
  • 要跟踪属性更改,需要传递 deep: true。它将为每个历史记录创建克隆。
    在这里插入图片描述

3、历史存储容量

  • 默认(无限制)保留所有历史记录,直到手动清除它们,可以通过容量选项设置要保留的最大历史记录量。
    在这里插入图片描述

4、历史刷新时间

  • 来自Vue的文档:Vue的反应性系统缓冲无效效果并异步刷新它们,以避免在同一“tick”中发生许多状态突变时不必要的重复调用。
  • watch 一样,可以使用 flush 选项修改刷新时间。
    在这里插入图片描述
  • 默认值为“pre”,以使此可组合项与 Vue 观察者的默认值保持一致。这也有助于避免常见问题,例如作为引用值多步更新的一部分生成的多个历史记录点可能会破坏应用程序状态的不变量。可以使用 commit() 以防需要在同一个“tick”中创建多个历史记录点。
    在这里插入图片描述
  • 另一方面,当使用 flush 'sync' 时,可以使用 batch(fn) 为多个同步操作生成单个历史记录点
    在这里插入图片描述

九、useLocalStorage

  • 响应式版的 LocalStorage
  • 和使用useStorage一样

十、useSessionStorage

  • 响应式版的 SessionStorage
  • 和使用useStorage一样

十一、useStorage

  • 响应式版的 LocalStorage/SessionStorage

1、使用

在这里插入图片描述

2、合并默认值

  • 默认情况下,useStorage将使用来自存储的值。
  • 请注意,在向默认值添加更多属性时,如果客户端存储没有该键,则该键可能是未定义的。
    在这里插入图片描述
  • 要解决这个问题,您可以启用mergeDefaults选项。
    在这里插入图片描述
  • 将其设置为mergeDefaults: true 时,它​​将对对象执行浅合并。
  • 你可以传递一个函数来执行自定义合并(例如深度合并),例如:
    在这里插入图片描述

3、自定义序列化

  • 默认情况下,useStorage将基于提供的默认值的数据类型巧妙地使用相应的序列化器。
  • 例如,JSON.stringify / JSON.parse 将用于对象,Number.toString / parseFloat 用于数字等。
  • 你也可以提供自己的序列化函数来使用Storage
    在这里插入图片描述
  • 请注意,当您提供 null 作为默认值时,useStorage 无法从中假定数据类型。
  • 在这种情况下,您可以提供自定义序列化程序或显式重用内置序列化程序。
    在这里插入图片描述

十二、useStorageAsync

  • 支持异步的响应式存储
  • 和使用useStorage一样

十三、useThrottledRefHistory

  • 带有节流过滤器的useRefHistory的简写
  • 此函数在计数器值更改后立即拍摄第一个快照,并在延迟 1000 毫秒后拍摄第二个快照。
    在这里插入图片描述

相关文章:

  • 全球建筑网站/百度推广课程
  • 网站建设开票属于哪个名称/服装营销方式和手段
  • 做网站与不做网站的区别/上海网站建设seo
  • 做仪表行业推广有哪些网站/百度搜索引擎收录
  • 计算机网络技术出来干什么/seo点击工具
  • 注册域名的服务商平台/杭州seo全网营销
  • 浅谈DNS解析
  • 图片转PDF怎么弄?这几个方法值得你试一试
  • 数据结构:线性表的链式表示和实现
  • vsftp+ssl服务搭建
  • vue+node+mysql全栈项目完整记录
  • 机器学习/人工智能 实验二:图像特征自动学习方法实践与分析
  • sqli-labs 11~14 多命通关攻略(报错注入)
  • python学习笔记---面向对象高级编程【廖雪峰】
  • 1813. 句子相似性 III
  • 【PCB专题】什么是工程咨询EQ(Engineer Questions)
  • 基于强化学习Q学习算法的AI下五子棋项目
  • pdf怎么压缩的小一点,这一招超级有效