@fileverse-dev/dsheet

中文文档
4.1.27发布于 2026/11/10TypeScriptESM + CJS近 30 天下载 4185

双层

中文使用文档
文档目录21 节
  1. 其特征包括:
  2. 安装
  3. 设置
  4. 1. 进口
  5. 2. 配置尾风
  6. 3. 基本用途
  7. 推荐参考
  8. 必需的道具
  9. 可选道具
  10. 高级道具
  11. UI 国道
  12. 实例
  13. 仅读查看器
  14. 协作编辑器
  15. 自定义导航栏
  16. 带有模板
  17. 发展
  18. 运行演示
  19. 构建软件包
  20. 类型脚本
  21. 许可证

文件向量 d Sheets

NPM TypeScript

dsheets. new (英语) 您的端到端加密替代 Google 工作表 & Excel 。 用它来读取,操控,甚至写出财务数据,实时. 建在与 Ddocs 相同的中间软件上. 新的,应用程序是专注隐私的,主权的, 并给予你完全控制你的数据.

其特征包括:

  • 端到端加密
  • 本地端对端存储( P)
  • 查询APIs甚至智能合同的活数据
  • 启用暗模式和其他颜色主题
  • 使用熟悉的电子表格接口和函数( VLOOKUP, INDEX, MATCH...)
  • Granular 访问权限(例如,查看、评论、编辑、建议访问特定电子邮件地址)
dsheetsnew

安装

通过 npm 安装开始 :

npm install @fileverse-dev/dsheet

设置

1. 进口

添加下列进口

import DsheetEditor from '@fileverse-dev/dsheet';
import '@fileverse-dev/dsheet/styles';

2. 配置尾风

添加到您的 tailwind.config.js数字 :

module.exports = {
  content: [
    "./src/**/*.{js,jsx,ts,tsx}",
    "./node_modules/@fileverse-dev/dsheet/dist/index.es.js"
  ]
}

3. 基本用途

function App() {
  const [data, setData] = useState({});

  return (
    <DsheetEditor
      isAuthorized={true}
      dsheetId="my-sheet-id"
      onChange={(updateData) => setData(updateData)}
    />
  );
}

推荐参考

必需的道具

Prop类型说明
isAuthorizedboolean用户的授权状态
dsheetIdstring协作室的独特标识符

可选道具

Prop类型默认说明
onChange(data: SheetUpdateData, encodedUpdate?: string) => void- 说吧当工作表数据改变时召回
onContentUpdate() => void- 说吧不编码或重建工作表的廉价节奏回调
portalContentstring- 说吧编码初始工作表数据
isReadOnlybooleanfalse启用只读模式
allowCommentsbooleanfalse启用注释( 需要) isReadOnly=true(中文(简体) )
usernamestring- 说吧协作的用户名
isCollaborativebooleanfalse启用协作功能
enableWebrtcbooleantrue为 P2P 协作启用 WebRTC
enableIndexeddbSyncbooleantrue启用本地索引 DB 持久性
isTemplateOpenboolean- 说吧模板侧边栏状态
selectedTemplatestring- 说吧选中模板标识符
onboardingCompleteboolean- 说吧登入完成状态
sheetEditorRefRefObject<WorkbookInstance>- 说吧外部对编辑器实例的对比

高级道具

Prop类型说明
renderNavbar(editorValues?: EditorValues) => JSX.Element自定义导航条渲染器
onboardingHandlerOnboardingHandlerType自定义登入逻辑
dataBlockApiKeyHandlerDataBlockApiKeyHandlerType数据块的 API 密钥处理器
getCommentCellUI(row: number, column: number, dragHandler: CommentUIDragFn) => void自定义注释 UI 处理器
commentDataObject单元格注释数据
toggleTemplateSidebar() => void模板侧边栏切换处理器
storeApiKey(apiKeyName: string) => voidAPI 密钥存储处理器
onDataBlockApiResponse(dataBlockName: string) => void数据块 API 响应处理器
onDuneChartEmbed() => void嵌入式处理器
onSheetCountChange(sheetCount: number) => void工作表计数更改处理器

UI 国道

Prop类型说明
setShowFetchURLModalDispatch<SetStateAction<boolean>>URL 获取模式状态设置器
setFetchingURLData(fetching: boolean) => voidURL 正在获取状态设置
setInputFetchURLDataBlockDispatch<SetStateAction<string>>URL 输入状态设置器
setForceSheetRenderDispatch<SetStateAction<number>>强制重击触发器

实例

仅读查看器

<DsheetEditor
  isAuthorized={true}
  dsheetId="viewer-sheet"
  isReadOnly={true}
  allowComments={true}
  portalContent={encodedData}
  onChange={() => {}}
/>

协作编辑器

<DsheetEditor
  isAuthorized={true}
  dsheetId="collab-sheet"
  username="john-doe"
  isCollaborative={true}
  enableWebrtc={true}
  onChange={(data) => console.log('Sheet updated:', data)}
/>

自定义导航栏

<DsheetEditor
  isAuthorized={true}
  dsheetId="custom-sheet"
  renderNavbar={(editorValues) => (
    <div className="flex items-center gap-4">
      <h1>My Custom Sheet</h1>
      <button onClick={() => editorValues?.sheetEditorRef.current?.exportToExcel()}>
        Export
      </button>
    </div>
  )}
/>

带有模板

<DsheetEditor
  isAuthorized={true}
  dsheetId="template-sheet"
  selectedTemplate="financial-budget"
  isTemplateOpen={true}
  toggleTemplateSidebar={() => setTemplateOpen(!templateOpen)}
/>

发展

运行演示

cd demo
npm install
npm run dev

构建软件包

npm run build

类型脚本

所有道具全部输入. 导入类型 :

import { DsheetProps, SheetUpdateData, EditorValues } from '@fileverse-dev/dsheet/types';

许可证

AGPL-3.0 导弹

版本与发布记录

@fileverse-dev/dsheet 共发布 1,050 个版本,首次发布于 2025/04/21;过去 12 个月发布了 550 个版本。

版本发布日期距今
4.1.27latest2026/11/104 天前
4.1.11-opaque-sheets.22026/11/078 天前
4.1.262026/11/078 天前
4.1.252026/11/068 天前
4.1.24-stabilise-package-42026/11/0410 天前
4.1.24-stabilise-package-32026/11/0311 天前

其他发布通道:add-support-for-external-function-ui → 0.0.39-patch-1,update-suggestion-box → 0.0.42-patch-2,expose-workbook-context → 0.0.52-patch-1,patch-2 → 0.0.52-patch-2,patch-3 → 0.0.52-patch-3,rate-limit → 0.0.84-patch-1。

关于 @fileverse-dev/dsheet 的常见问题

@fileverse-dev/dsheet 是什么?

双层

如何安装 @fileverse-dev/dsheet?

在项目目录运行 npm install @fileverse-dev/dsheet,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:yjs(>=13.6.30 <14)、react(^18.2.0 || ^19.0.0)、react-dom(^18.2.0 || ^19.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@fileverse-dev/dsheet 支持 TypeScript 吗?

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

@fileverse-dev/dsheet 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@fileverse-dev/dsheet 可以商用吗?

@fileverse-dev/dsheet 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@fileverse-dev/dsheet 的下载量有多少?

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

@fileverse-dev/dsheet 还在维护吗?

最新版本 4.1.27 发布于 2026/11/10(4 天前);至今共发布 1050 个版本,其中过去 12 个月发布了 550 个;首次发布于 2025/04/21。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。