更新记录

0.0.1(2026-10-03) 下载此版本

  • 首次发布:多 sheet xlsx 读写
  • writeXlsx:字符串/数字/布尔/空值,inlineStr 无 sharedStrings
  • readXlsx:同构 JSON 输出,内置解压炸弹防御(单条目 64MB 上限)
  • 支持 uni-app x App-Android / App-iOS / App-Harmony / Web / 微信小程序 / 支付宝小程序(HBuilderX 5.31+ 蒸汽模式)

平台兼容性

uni-app x(5.31)

Chrome Safari Android iOS 鸿蒙 微信小程序
√ √ √ √ √ √

其他

多语言 暗黑模式 宽屏模式 蒸汽模式
× × × √

tui-xlsx-uasm

uni-app x 的 Excel 读写插件(UASM 原生插件)。多 sheet xlsx 读写,纯 C++ 实现(手写 OOXML + zip),无第三方依赖,原生执行性能。

支持平台

uni-app x App-Android uni-app x App-iOS uni-app x App-Harmony uni-app x Web 微信小程序 支付宝小程序
√ √ √ √ √ √

要求 HBuilderX 5.31+(蒸汽模式)。

API

writeXlsx(sheets)

生成 xlsx 文件字节流。

import { writeXlsx, XlsxSheet } from '@/uni_modules/tui-xlsx-uasm'

const sheets : XlsxSheet[] = [
    {
        name: 'Sheet1',
        rows: [
            ['姓名', '年龄', '已婚', '备注'],
            ['张三', 28, true, null],
        ],
    },
    {
        name: '统计',
        rows: [['合计', 28, null, 'hello']],
    },
]
const bytes = writeXlsx(sheets)
  • 单元格值支持 string | number | boolean | null(null 写空单元格)
  • 返回 ArrayBuffer,保存文件请配合 uni.getFileSystemManager().writeFile 等平台 API

readXlsx(bytes)

解析 xlsx 文件字节流,返回与 writeXlsx 输入同构的结构。

import { readXlsx } from '@/uni_modules/tui-xlsx-uasm'

const wb = readXlsx(bytes)
for (const sheet of wb.sheets) {
    console.log(sheet.name, sheet.rows)
}

限制说明

  • 日期/公式单元格返回原始值(不做格式化解析);样式不解析
  • 行上限 10 万,列上限 16384,总单元格上限 100 万
  • 内置解压炸弹防御(单条目解压上限 64MB)
  • 插件不做文件 IO:文件读写由调用方用 uni API 完成(读入 ArrayBuffer,写出保存)

依赖

无第三方依赖(OOXML 与 zip 均为内置 C++ 实现)。

推荐插件:TuiPlus Vapor 组件库

TuiPlus Vapor 专注 uni-app x 5.0 蒸汽模式的高性能 UI 组件库:内置 TuiVitex 编译器(简单组件编译为官方组件、复杂组件 Canvas 绘制)与 TuiEntine Canvas Flex 渲染引擎,蒸汽模式 + external-class + CSS 原子化最佳实践。

👉 https://ext.dcloud.net.cn/plugin?id=28497

隐私、权限声明

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

无

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

插件不采集任何数据

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

无

许可协议

MIT协议

暂无用户评论。