用于 wordpress/preferences 的持久化工具。

包含一个持久化层,通过 REST API 将数据保存到 WordPress user meta。如果由于任何原因无法将数据保存到数据库,此持久化层还会使用本地存储作为后备方案。

安装

安装模块

npm install @wordpress/preferences-persistence --save

此软件包假定你的代码将在 ES2015+ 环境中运行。如果你使用的环境对此类语言特性和 API 的支持有限或完全不支持,则应在你的代码中引入@wordpress/babel-preset-default 附带的 polyfill。

用法

调用 create 函数以创建持久化层。

const persistenceLayer = create();

接下来,配置 preferences 包以使用该持久化层:

wp.data( 'core/preferences' ).setPersistenceLayer( persistenceLayer );

参考

create

创建一个通过 REST API 将数据存储在 WordPress user meta 中的持久化层。

参数

  • options Object:
  • options.preloadedData ?Object:任何应预加载的已持久化偏好设置数据。设置后,持久化层将避免从 REST API 获取数据。
  • options.localStorageRestoreKey ?string:用于恢复 localStorage 备份的键,在持久化层调用 localStorage.getItem 或 localStorage.setItem 时使用。
  • options.requestDebounceMS ?number:对 API 请求进行防抖,使其至少每 requestDebounceMS 毫秒才发生一次,避免使服务器不堪重负。默认值为 2500 毫秒。

返回值

  • Object:用于 WordPress user meta 的持久化层。

参与此软件包贡献

这是一个独立软件包,属于 Gutenberg 项目。该项目组织为一个 monorepo。它由多个自包含的软件包组成,每个软件包都有特定用途。此 monorepo 中的软件包发布到 npm,并被 WordPress 以及其他软件项目使用。

要了解有关为此软件包或整个 Gutenberg 做贡献的更多信息,请阅读项目的主要贡献者指南。