mcpField
S
syncfusion-angular-spreadsheet-editor

syncfusion-angular-spreadsheet-editor

github.com/syncfusion开发096 次安装1 周前更新
代码仓库

关于 syncfusion-angular-spreadsheet-editor

面向开发者的技能,用于生成在 Angular 中集成 Syncfusion Spreadsheet Editor 的代码。它提供按功能划分的 API 参考,并在生成代码和修改项目文件时设置约束。

主要功能

  1. 01生成 Angular 组件代码
  2. 02Excel、CSV 和 PDF 导入导出指南
  3. 03数据编辑、公式与验证
  4. 04单元格格式及表格功能
  5. 05项目文件修改审批流程

适用场景

  1. 01在 Angular 应用中添加表格编辑
  2. 02生成加载或导出表格文件的代码
  3. 03配置公式、图表或单元格格式

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/syncfusion/spreadsheet-editor-sdk-skills --skill syncfusion-angular-spreadsheet-editor

安装后在 Claude Code 中输入/syncfusion-angular-spreadsheet-editor确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
references/
autofill.md
charts.md
clipboard.md
collaborative-editing.md
comments.md
conditional-formatting.md
context-menu.md
custom-functions.md
data-binding.md
data-validation.md
defined-names.md
edit-cell.md
events.md
find-replace.md
formatting.md
formulas.md
freeze-panes.md
getting-started.md
hyperlink.md
images.md
import-export.md
localization.md
merge-cells.md
misc-operations.md
notes.md
number-formatting.md
print.md
protection.md
ribbon-customization.md

详细介绍

Syncfusion Angular 电子表格编辑器

概述

此技能可帮助开发者生成 Angular 代码,以便在应用中集成 Syncfusion 电子表格编辑器。它提供可直接使用的代码片段、API 指南和最佳实践,帮助开发者在 Angular 项目中构建类似 Excel 的功能。

主要功能

  • 文件操作: 导入/导出 Excel 文件(xlsx、xls、xlsb)、CSV 文件,以及导出为 PDF
  • 数据管理: 数据绑定、编辑、排序、筛选和验证
  • 单元格操作: 格式设置(字体、颜色、边框、对齐方式)、合并单元格、自动换行
  • 公式与计算: 内置 Excel 公式、自定义函数、命名范围
  • 协作: 备注、评论和串联讨论
  • 高级功能: 图表、图片、超链接、条件格式、冻结窗格、工作表保护,以及针对大型数据集的虚拟化

快速入门示例

示例 1:生成带格式的电子表格

用户: "创建一个包含数据并应用单元格样式的电子表格"

结果: 生成一个 Angular 组件代码片段,将提供的数据加载到电子表格中,并应用基本的单元格格式。

示例 2:生成加载文件的代码

用户: "创建一个电子表格,并在初始状态下加载 Excel 文件"

结果: 生成一个 Angular 组件代码片段,用于初始化电子表格,并在启动时以编程方式打开 Excel 文件。

入门指南 — 最精简的 Angular 代码

使用 独立组件(Angular 14+)的最简 Angular 配置:

app.ts

import { Component, ViewChild } from '@angular/core';
import { SpreadsheetAllModule, SpreadsheetComponent } from '@syncfusion/ej2-angular-spreadsheet';

@Component({
  selector: 'app-root',
  standalone: true,
  imports: [SpreadsheetAllModule],
  template: `
    <ejs-spreadsheet #spreadsheet (created)="created()">
      <e-sheets>
        <e-sheet>
          <e-rows>
            <e-row>
              <e-cells>
                <e-cell value="Hello, Spreadsheet!"></e-cell>
              </e-cells>
            </e-row>
          </e-rows>
        </e-sheet>
      </e-sheets>
    </ejs-spreadsheet>
  `
})
export class AppComponent {
  @ViewChild('spreadsheet') spreadsheet!: SpreadsheetComponent;

  created(): void {
    // All post-initialization code goes here
  }
}

占位符:

  • #spreadsheet — 组件的 Angular 模板引用变量
  • <e-sheets> — 使用声明式方式定义工作表、行和单元格
  • created() — 在电子表格完全初始化后调用的事件处理程序

注意: 请务必在独立组件的 imports 数组中导入 SpreadsheetAllModule,以确保所有功能正常运行。


为用户的项目生成 Angular 代码

触发关键词: "angular spreadsheet"、"spreadsheet editor"、"syncfusion spreadsheet"、"excel component"、"load excel file"、"open excel file"、"import excel"、"export excel file"、"save excel"、"export to pdf"、"export to csv"、"view excel"、"configure spreadsheet"、"create spreadsheet"、"add spreadsheet"、"spreadsheet data"、"cell formatting"、"apply formulas"、"insert chart"、"data binding"、"spreadsheet validation"、"freeze panes"、"protect sheet"

工作流:

  1. 确定用户请求的电子表格功能(数据绑定、公式、图表、导出等)。

  2. 阅读相关的 references/*.md 文件,了解所请求功能的 API 和代码模式。

    • 对于创建、初始化、渲染、软件包配置、CSS 配置或基本电子表格相关请求,请先阅读 references/getting-started.md。
  3. 在生成代码、安装软件包、创建文件或修改项目文件之前,必须先停止。 检查用户是否已选择交付方式。

  4. 如果用户尚未选择交付方式,必须先用以下简洁的多选问题询问用户:

    "您希望如何接收生成的电子表格代码?"

    • 选项 1: 替换特定项目文件中的代码(你需要提供文件路径并确认)
    • 选项 2: 将代码保存到此技能的输出文件夹 {skill-root}/syncfusion-angular-spreadsheet-editor/output/app.ts(及相关文件)
    • 选项 3: 直接在聊天窗口中分享代码
  5. 如果用户选择 选项 1,请先验证所提供的项目文件/文件夹路径,再生成或替换代码。

    • 如果所提供的路径是现有 Angular 项目且包含 package.json,请继续之前的操作。
    • 如果所提供的路径是空文件夹或不包含 Angular 项目,请勿编辑文件,也不要结束聊天。
    • 说明替换项目文件前需要有 Angular 项目。
    • 询问用户是否要先使用 references/getting-started.md 设置/安装 Angular。
    • 除非用户明确确认,否则不要创建项目文件、安装软件包或自动运行设置命令。
  6. 只有在用户选择交付方式且选项 1 的路径验证完成后,才能使用 references/*.md 中的 API 和代码片段生成 Angular 代码,并将具体占位内容替换为用户项目中的实际值。

  7. 将实现限定在 created 事件处理程序中 —— 所有代码实现都应放在 Spreadsheet 的 created 事件中,除非用户明确要求使用其他事件处理程序(例如 beforeSave、cellSave 等)。

  8. 除非用户明确选择选项 1、提供有效的 Angular 项目文件/文件夹路径并给予许可,否则不得更改工作区项目文件。

  9. 如果未检测到 Angular 项目或 package.json,请说明需要先有 Angular 项目,并提供 references/getting-started.md 中的设置指南。除非用户明确要求创建 Angular 应用并给予许可,否则不要创建项目文件、安装软件包或自动运行设置命令。

  10. 仅当用户明确要求时,才创建新的 Angular 应用/项目,例如:

  • “创建一个 Angular 应用并渲染 Spreadsheet”
  • “使用 Spreadsheet 创建一个新的 Angular 应用”
  • “创建 Angular 应用并添加 Spreadsheet”
  • “从头开始设置 Spreadsheet 应用”

如果用户仅要求创建、添加、渲染或配置 Spreadsheet 组件,请勿搭建新的 Angular 应用。应将其视为针对现有 Angular 项目的 Spreadsheet 组件/代码生成请求。 11. 为现有 Angular 项目生成代码时,请提供 references/getting-started.md 中关于所需软件包和 CSS 的设置指南。 12. 交付代码后,请提供完整的 Angular 代码片段和简洁的集成步骤。

操作限制(输出目录、临时文件、允许使用的库等)请参阅 ## Rules 部分。

代码参考

所有代码片段和示例都位于 references/ 文件夹中。每个文件包含:

  • 最简 Angular 代码 — 可正常运行、可直接使用的代码片段
  • 占位符 — 用户必须自定义的值
  • 注意事项 — Angular 最佳实践和限制
文件主题
getting-started.md项目设置、包安装、CSS 引用、基本渲染和初始数据绑定
data-binding.md本地数组、JSON、远程(DataManager)
formulas.md公式、汇总、命名范围
formatting.md单元格格式、边框、文本换行
number-formatting.md数字格式、十进制、小数、货币、日期
conditional-formatting.md基于条件的规则和突出显示、基于公式的规则
data-validation.md验证规则、无效项突出显示
sorting-filtering.md排序、筛选
find-replace.md查找、替换
import-export.md保存(XLSX/CSV/PDF)、打开、openFromJson
charts.md插入、编辑、删除图表
images.md插入、修改图片
hyperlink.md添加、移除超链接
comments.md线程式评论、回复、解决评论线程
notes.md简单的单元格备注、便笺显示状态、添加/编辑/删除
collaborative-editing.md实时协作编辑、共享工作簿同步、在线状态指示器
protection.md工作表保护、单元格锁定、权限
edit-cell.mdstartEdit、endEdit、updateCell、编辑模式
freeze-panes.md冻结行/列、拆分窗格
row-column.md插入、删除、调整行/列大小、隐藏
merge-cells.md合并、取消合并单元格、跨单元格显示
print.md页面设置、页眉/页脚、缩放、页边距
misc-operations.md自动填充、清除、工作表管理、goTo
clipboard.md使用不同的粘贴类型进行复制、剪切、粘贴
selection.md选择单元格/区域、多选、getSelectedRange
scrolling-virtualization.md虚拟滚动、大型数据集、性能
wrap.md文本换行、多行显示、行高
defined-names.md命名范围、定义名称、refersTo 格式
custom-functions.md自定义计算函数、addCustomFunction
ribbon-customization.md功能区选项卡、工具栏项、文件菜单自定义
context-menu.md右键快捷菜单、contextMenuBeforeOpen
localization.md多语言、本地化区域、RTL、数字/日期格式
events.md事件处理、事件属性、事件模式
autofill.md自动填充模式、填充类型、序列
rich-text-formatting.md富文本片段、混合样式、下标/上标

代码生成关键规则(Angular 优先)

  1. Angular 优先的代码片段 — 所有示例和代码片段都必须使用 Angular(TypeScript 和内联模板)编写,并且能够通过当前的 @syncfusion/ej2-angular-spreadsheet npm 包编译。

  2. 本清单中不包含内联代码 — 可运行的代码片段请参阅 references/*.md;此文件仅作为简洁的策略与索引。

  3. 默认事件作用域 — 除非用户明确要求在其他事件(例如 beforeSave、cellSave 等)中实现,否则所有实现都必须放在 Spreadsheet 的 created 事件处理程序中。这样可确保所有操作都在 Spreadsheet 组件完全初始化后执行。

  4. 独立组件 — 始终在组件中使用 standalone: true 和 imports 数组。绝不生成基于 NgModule、app.module.ts 或 app.component.css 的代码。

  5. 参考文件要求 — 每个参考文件必须包含:

    • 最简 Angular 代码(完整且可运行的独立组件,带内联模板)
    • 占位符(明确标出需要替换的值)
    • 说明(Angular 集成步骤和最佳实践)
  6. 许可证处理 — 不要硬编码许可证密钥;请引导用户通过环境变量或项目配置提供密钥。

  7. 保持数据完整性 — 生成或编辑工作表时,保留现有公式、引用和格式。

  8. 不得臆造 API — 仅使用已验证的 Syncfusion Spreadsheet Editor 方法名称。

  9. 先阅读参考文件 — 对于用户请求的任何功能,在生成代码前始终先阅读相关的 references/*.md 文件。

  10. 严格依据参考文件编写代码 — Angular 代码必须严格依据参考文件中列出的 API、方法、属性、事件和代码片段编写。不要臆造、猜测或建议参考文件中未明确列出的任何 API、方法、属性或事件。

规则

  • 用户选择 Option 2 时,输出文件必须放入 {skill-root}/syncfusion-angular-spreadsheet-editor/output/ 目录。
  • 仅使用 Syncfusion Spreadsheet API — 绝不推荐或使用其他电子表格库(例如 handsontable、ag-grid、luckysheet)。
  • 不创建临时文件 — 绝不在输出目录之外创建临时脚本、中间文件或脚手架。
  • 仅限 Angular 代码 — 所有生成的代码都必须是有效的 Angular TypeScript,并使用 Angular 模板语法;绝不生成原生 JavaScript、jQuery 或非 Angular 模式的代码。
  • Option 1 路径验证: 用户选择 Option 1 时,编辑或替换文件前始终验证提供的项目文件或文件夹路径。
    • 如果路径包含带有 package.json 的现有 Angular 项目,则按正常流程替换代码。
    • 如果路径为空或不包含 Angular 项目,则不要编辑文件,也不要结束对话。
    • 必须提出后续问题,而不是直接停止。
    • 说明替换项目文件前需要有 Angular 项目。
    • 询问用户是需要设置指导,还是希望先使用 references/getting-started.md 设置或安装 Angular。
    • 除非用户明确确认,否则不要创建项目文件、安装软件包或自动运行设置命令。
  • Angular 应用创建限制: 仅当用户明确要求创建 Angular 应用或项目时,才创建或搭建新的 Angular 应用,例如“创建 Angular 应用并呈现 Spreadsheet”或“创建 Angular 应用并添加 Spreadsheet”。对于“创建带数据的电子表格”或“添加 Spreadsheet”等常规请求,应将其视为针对现有 Angular 项目生成组件代码。

评论

支持 Markdown