更新记录

1.0.0(2025-04-08) 下载此版本

  • 双引擎支持:基于 SQLite + IndexedDB 双引擎适配,自动选择最优存储方案
  • LRU 缓存淘汰:智能的缓存淘汰策略,自动清理过期和低频数据
  • 数据加密存储:使用 AES-256 加密算法,支持设备指纹绑定
  • 离线数据同步:支持离线数据自动同步和冲突解决
  • 性能优化:批量操作和异步处理,提供最佳性能表现

平台兼容性

Vue2 Vue3
App 快应用 微信小程序 支付宝小程序 百度小程序 字节小程序 QQ小程序
HBuilderX 3.96
钉钉小程序 快手小程序 飞书小程序 京东小程序 鸿蒙元服务
H5-Safari Android Browser 微信浏览器(Android) QQ浏览器(Android) Chrome IE Edge Firefox PC-Safari

XL-Cache-Engine 高性能本地缓存引擎组件

在线演示地址:在线demo 一个功能强大的跨平台本地缓存引擎组件,支持 LRU 缓存淘汰策略、数据加密存储和离线数据自动同步等功能。

功能特点

  • 双引擎支持:基于 SQLite + IndexedDB 双引擎适配,自动选择最优存储方案
  • LRU 缓存淘汰:智能的缓存淘汰策略,自动清理过期和低频数据
  • 数据加密存储:使用 AES-256 加密算法,支持设备指纹绑定
  • 离线数据同步:支持离线数据自动同步和冲突解决
  • 性能优化:批量操作和异步处理,提供最佳性能表现

平台特性

H5 平台特性

在 H5 环境下,组件具有以下特性:

  1. 存储引擎

    • 使用 IndexedDB 作为存储引擎
    • 支持大容量数据存储
    • 支持索引和事务操作
  2. 数据加密

    • 使用 CryptoJS 实现 AES-256 加密
    • 支持设备指纹绑定
    • 自动密钥管理
  3. 性能优化

    • 批量操作优化
    • 异步处理机制
    • 内存使用优化
  4. 限制说明

    • 存储容量受浏览器限制
    • 部分高级功能可能受限
    • 需要用户授权存储权限

App 平台特性

在 App 环境下,组件具有以下特性:

  1. 存储引擎

    • 使用 SQLite 作为存储引擎
    • 支持完整的 SQL 操作
    • 支持事务和索引
  2. 系统集成

    • 支持系统文件系统访问
    • 支持应用间数据共享
    • 支持系统级缓存管理
  3. 性能优化

    • 原生性能优化
    • 内存管理优化
    • 并发操作支持

安装使用

基本用法

<template>
  <xl-cache-engine ref="cacheEngineRef" />
</template>

<script setup>
import { ref } from 'vue';

const cacheEngineRef = ref(null);
</script>

组件属性

属性名 类型 默认值 说明
- - 暂无属性

组件事件

事件名 说明 返回值
- - 暂无事件

组件方法

方法名 说明 参数 返回值
initEngine 初始化缓存引擎 - Promise
set 设置缓存 key: string, value: any, options?: object Promise
get 获取缓存 key: string Promise
remove 删除缓存 key: string Promise
clear 清空缓存 - Promise
sync 同步缓存 - Promise

方法调用示例

// 设置缓存
const success = await cacheEngineRef.value.set('user_info', {
  id: 1,
  name: '张三',
  age: 25
});

// 获取缓存
const userInfo = await cacheEngineRef.value.get('user_info');

// 删除缓存
const removed = await cacheEngineRef.value.remove('user_info');

// 清空缓存
const cleared = await cacheEngineRef.value.clear();

// 同步缓存
const synced = await cacheEngineRef.value.sync();

缓存配置

组件支持以下配置选项:

const config = {
  maxSize: 100 * 1024 * 1024, // 最大缓存大小(100MB)
  maxAge: 7 * 24 * 60 * 60 * 1000, // 最大缓存时间(7天)
  maxItems: 1000, // 最大缓存项数
  engine: 'sqlite', // 存储引擎类型
  encryption: true, // 是否启用加密
  syncInterval: 5 * 60 * 1000 // 同步间隔(5分钟)
};

注意事项

  1. 缓存引擎会自动初始化,无需手动调用
  2. 数据加密功能需要设备指纹支持
  3. 同步功能需要网络连接
  4. 缓存大小和数量有限制,超出限制会自动清理

常见问题

Q: 如何选择合适的存储引擎?

A: 组件会自动根据平台选择最优的存储引擎,App 端使用 SQLite,H5 端使用 IndexedDB。

Q: 如何处理数据同步冲突?

A: 组件使用版本号机制处理同步冲突,高版本数据会覆盖低版本数据。

Q: 如何优化缓存性能?

A: 可以通过调整配置参数优化性能,如设置合适的缓存大小、过期时间和同步间隔。

更新日志

v1.0.0 (2024-03-20)

  • 初始版本发布
  • 支持双引擎存储
  • 支持数据加密
  • 支持离线同步
  • 支持 LRU 缓存淘汰

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。

使用中有什么不明白的地方,就向插件作者提问吧~ 我要提问