# @feathersjs-offline/localforage 中文文档

规范地址：https://npmcn.com/package/%40feathersjs-offline/localforage/

版本：1\.1\.1
npm 元数据更新时间：2022-04-05T10:25:59.778Z
中文译文更新时间：2026-11-14T12:52:10.577Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40feathersjs-offline/localforage
原文对照：https://npmcn.com/package/%40feathersjs-offline/localforage/?lang=original
项目主页：https://github.com/feathersjs-offline/localforage
源码仓库：https://github.com/feathersjs-offline/localforage

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：36 kB，8 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- Node.js 要求：\>= 12
- 运行依赖：6 个
- 首次发布：2021-10-23T07:07:16.309Z
- 最新版本发布：2021-11-19T11:18:26.612Z
- 近 30 天下载量：3407（2026-10-15 至 2026-11-13，npm 官方下载统计）
- 已发布版本数：6（近 12 个月 0 个）

## 中文简介

基于本地文件的 FeathersJS 客户端侧服务, 持续到索引数据库、 WebSQL 或 localStorage

## 安装

```sh
npm install @feathersjs-offline/localforage
```

也可以使用：`pnpm add @feathersjs-offline/localforage`、`yarn add @feathersjs-offline/localforage`、`bun add @feathersjs-offline/localforage`

## README

# @ feathersjs-offline/ 本地福建

[![npm version](https://img.shields.io/npm/v/@feathersjs-offline/localforage.svg?style=flat-square)](https://www.npmjs.com/package/@feathersjs-offline/localforage) [![Build Status](https://img.shields.io/github/workflow/status/feathersjs-offline/localforage/CI)](https://github.com/feathersjs-offline/localforage/actions) [![Known Vulnerabilities](https://snyk.io/test/github/feathersjs-offline/localforage/badge.svg)](https://snyk.io/test/github/feathersjs-offline/localforage) [![Maintainability](https://api.codeclimate.com/v1/badges/29bdb5362c208a740016/maintainability)](https://codeclimate.com/github/feathersjs-offline/localforage/maintainability) [![Test Coverage](https://api.codeclimate.com/v1/badges/29bdb5362c208a740016/test_coverage)](https://codeclimate.com/github/feathersjs-offline/localforage/test_coverage) [![Download Status](https://img.shields.io/npm/dm/@feathersjs-offline/localforage)](https://www.npmjs.com/package/@feathersjs-offline/localforage)

[@ featherjs-offline/ 本地福建](https://github.com/feathersjs-offline/localforage/) 是一个数据库服务适配器包 `localForage` 坚持其中之一 `IndexedDB`, (中文(简体) ), `WebSQL`,或 `LocalStorage` 使得它对于移动和离线第一应用程序非常有用,具有额外能力来无缝地处理Blobs,TypedArrays等JS对象.

```bash
$ npm install --save @feathersjs-offline/localforage
```

> **重要内容:** `@feathersjs-offline/localforage` 执行 [Feathers 常见数据库适配器 API](https://docs.feathersjs.com/api/databases/common.html) 财务报告和审定财务报表 [查询语法](https://docs.feathersjs.com/api/databases/querying.html)。 。 。 .

## API 密码

### `service(options)`

返回已初始化的新服务实例.

```js
const service = require('@feathersjs-offline/localforage');

app.use('/messages', service({
  storage: ['IndexedDB', 'localStorage']
}));
app.use('/messages', service({ storage, id, startId, name, store, paginate }));
```

**选项 :**

-   `storage` (单位:千美元)_选项_,默认值 : `'INDEXEDDB'`) - 存储后端. 一定是一个或一个以上 `'INDEXEDDB'`, (中文(简体) ), `'WEBSQL'`,或 `'LOCALSTORAGE'`。如果在实际设备上不支持所需的存储类型,适配器将使用与倒置相同的序列。 或者,您可以提供一系列决定您选择的优先级的存储后端 .
-   `version` (单位:千美元)_选项_,默认值 : `1.0`) - (英语) `localforage` 要使用的驱动程序版本 。 目前仅 `1.0` 已存在.
-   `size` (单位:千美元)_选项_默认值 `4980736`) - 所需的最大数据库大小。 默认 DB 大小为 _刚刚下_ 5MB,因为它是任何浏览器中无需提示即可使用的最高尺寸.
-   `id` (单位:千美元)_选项_,默认值 : `'id'`) - id字段地产名称.
-   `name` (单位:千美元)_选项_,默认值 : `'feathers'`) - 将数据存储在本地或自动存储中的关键.
-   `store` (单位:千美元)_选项_) - 有 ID 项任务以预初始化数据存储的对象.
-   `dates` (单位:千美元)_选项_默认值 `false`) - 将ISO格式化的日期字符串转换为 `Date` 结果集中的对象.
-   `events` (单位:千美元)_选项_\- 清单 [自定义服务事件](https://docs.feathersjs.com/api/events.html#custom-events) 本服务发送.
-   `paginate` (单位:千美元)_选项_) - A类 [标记对象](https://docs.feathersjs.com/api/databases/common.html#pagination) 包含一个 `default` 财务报告和审定财务报表 `max` 页面大小.
-   `whitelist` (单位:千美元)_选项_) - 可允许的附加查询参数列表.
-   `multi` (单位:千美元)_选项_\- 允许 `create` 带有数组和 `update` 财务报告和审定财务报表 `remove` 与 `id` `null` 以更改多个项目。 可能会 `true` 所有方法或允许的一系列方法(例如:. `[ 'remove', 'create' ]`) (中文(简体) ).
-   `reuseKeys` (单位:千美元)_选项_,默认值 : `false`)允许重复键(参见 `name`),即最后定义胜出. 主要用于示范和测试目的.

## 仓库、打字台和其他联署材料物件

由于这是一项执行,除此之外 `localForage` 您可以存储任意类型 `@feathersjs-offline/localforage`;你并不局限于像在 `localStorage`。即使 `localStorage` 是您的存储后端, `@feathersjs-offline/localforage` jSON.parse () 和 JSON. stringify () 在获取/设定值时自动执行 .

`feathers-localforage` 支持存储所有可以被序列化为JSON的原生JS对象,以及ArrayBuffers, Blobs,和TypedArrays. 检查 [本地格式 API 文档](https://localforage.github.io/localForage/#data-api-setitem) 对于支持的完整类型列表。 此外,设置选项 `dates` 改为 `true` 将确定结果中任何 ISO 格式化的日期实际上是日期对象而不是文本字符串.

> 每个存储后端都支持所有类型,尽管存储限制在 `localStorage` 使得许多大型Blobs的存储成为不可能.

我们默认 `indexedDB` 如果可以的话,倒数 `localStorage` 作为最后的手段.

## 示例

见 [客户](https://docs.feathersjs.com/api/client.html) 关于浏览器和React Industrial中使用Feathers的更多信息的章节.

### 浏览器

```html
<script type="text/javascript" src="//unpkg.com/@feathersjs/client@^4.5.11/dist/feathers.js"></script>
<script type="text/javascript" src="//unpkg.com/@feathersjs-offline/localforage@^1.0.0/dist/localforage.js"></script>
<script type="text/javascript">
  var service = feathersjsOfflineLocalforage.init({
    storage: ['indexeddb', 'websql', 'localStorage']
  });
  var app = feathers().use('/messages', service);

  var messages = app.service('messages');

  messages.on('created', function(message) {
    console.log('Someone created a message', message);
  });

  messages.create({
    text: 'Message created in browser'
  });
</script>
```

## 许可证

版权 (c) 由 Feathers 创作 2021

凭 [麻省理工学院许可证](https://npmcn.com/package/%40feathersjs-offline/localforage/LICENSE)。 。 。 .

## 常见问题

### @feathersjs-offline/localforage 是什么？

基于本地文件的 FeathersJS 客户端侧服务, 持续到索引数据库、 WebSQL 或 localStorage

### 如何安装 @feathersjs-offline/localforage？

在项目目录运行 npm install @feathersjs-offline/localforage，或使用 pnpm add / yarn add / bun add。

### @feathersjs-offline/localforage 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @feathersjs-offline/localforage 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @feathersjs-offline/localforage 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>= 12。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @feathersjs-offline/localforage 可以商用吗？

@feathersjs-offline/localforage 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @feathersjs-offline/localforage 的下载量有多少？

根据 npm 官方下载统计，@feathersjs-offline/localforage 在 2026/10/15 – 2026/11/13 这 30 天内被下载 3,407 次，日均约 114 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @feathersjs-offline/localforage 还在维护吗？

最新版本 1\.1\.1 发布于 2021/11/19（4 年前）；至今共发布 6 个版本，其中过去 12 个月发布了 0 个；首次发布于 2021/10/23。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

