syncfusion-javascript-docx-editor
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseSyncfusion JavaScript DOCX Editor
Syncfusion JavaScript DOCX编辑器
Overview
概述
This skill helps developers generate TypeScript code for integrating the Syncfusion DOCX Editor into their JavaScript applications. It provides ready-to-use snippets and best practices for embedding a Document Editor that supports editing, reviewing, formatting, and more.
本Skill帮助开发者生成将Syncfusion DOCX编辑器集成到JavaScript应用中的TypeScript代码,提供现成可用的代码片段和最佳实践,用于嵌入支持编辑、审阅、格式化等功能的文档编辑器。
Key Capabilities
核心功能
- Document Editing: Create, edit, and view Word documents.
- Protection: Apply read-only mode, allow comments, allow form filling, enforce tracked changes,and define editable ranges.
- Review: Enable track changes (revisions) and accept/reject changes.
- Comments: Add comments, replies, and author metadata.
- Find and replace: Perform programmatic find and replace operations for automation.
- Form Fields: Insert and fill text fields, check boxes, and dropdown form fields.
- 文档编辑:创建、编辑和查看Word文档。
- 保护功能:应用只读模式、允许批注、允许表单填写、强制修订追踪,并定义可编辑范围。
- 审阅功能:启用修订追踪(版本变更)并接受/拒绝变更。
- 批注:添加批注、回复和作者元数据。
- 查找替换:执行程序化的查找和替换操作以实现自动化。
- 表单字段:插入并填写文本字段、复选框和下拉表单字段。
Prerequisites
前置条件
- npm package:
@syncfusion/ej2-documenteditor - Syncfusion License: https://www.syncfusion.com/products/communitylicense
- npm包:
@syncfusion/ej2-documenteditor - Syncfusion许可证:https://www.syncfusion.com/products/communitylicense
Quick Start Examples
快速入门示例
Example 1: Create Document Editor
示例1:创建文档编辑器
User: "Show me code to create a Document Editor component."
Result: A TypeScript code snippet that initializes the Document Editor component
用户: "展示创建文档编辑器组件的代码。"
结果: 一段初始化Document Editor组件的TypeScript代码片段
Example 2: Enable Read‑Only Restriction Mode
示例2:启用只读限制模式
User: "Create a Document Editor with Read‑Only restriction mode."
Result: A TypeScript snippet that creates a Document Editor with read‑only protection enabled.
用户: "创建一个带有只读限制模式的文档编辑器。"
结果: 一段创建启用只读保护的Document Editor的TypeScript代码片段
Getting Started — Minimal JavaScript (ES6) Code
快速上手 — 极简JavaScript(ES6)代码
Minimal JavaScript (ES6) Document Editor setup for a plain web project:
css
/* styles.css */
@import '../node_modules/@syncfusion/ej2-base/styles/material.css';
@import '../node_modules/@syncfusion/ej2-buttons/styles/material.css';
@import '../node_modules/@syncfusion/ej2-inputs/styles/material.css';
@import '../node_modules/@syncfusion/ej2-popups/styles/material.css';
@import '../node_modules/@syncfusion/ej2-lists/styles/material.css';
@import '../node_modules/@syncfusion/ej2-navigations/styles/material.css';
@import '../node_modules/@syncfusion/ej2-splitbuttons/styles/material.css';
@import '../node_modules/@syncfusion/ej2-dropdowns/styles/material.css';
@import "../node_modules/@syncfusion/ej2-documenteditor/styles/material.css";ts
import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor';
DocumentEditorContainer.Inject(Toolbar);
let documenteditor: DocumentEditorContainer = new DocumentEditorContainer({
enableToolbar: true,
height: '390px',
serviceUrl: 'https://document.syncfusion.com/web-services/docx-editor/api/documenteditor/'
});
documenteditor.appendTo('#DocumentEditor');Note: Thein examples is for evaluation/demo. Host your own service for production.serviceUrl
适用于普通Web项目的极简JavaScript(ES6)文档编辑器设置:
css
/* styles.css */
@import '../node_modules/@syncfusion/ej2-base/styles/material.css';
@import '../node_modules/@syncfusion/ej2-buttons/styles/material.css';
@import '../node_modules/@syncfusion/ej2-inputs/styles/material.css';
@import '../node_modules/@syncfusion/ej2-popups/styles/material.css';
@import '../node_modules/@syncfusion/ej2-lists/styles/material.css';
@import '../node_modules/@syncfusion/ej2-navigations/styles/material.css';
@import '../node_modules/@syncfusion/ej2-splitbuttons/styles/material.css';
@import '../node_modules/@syncfusion/ej2-dropdowns/styles/material.css';
@import "../node_modules/@syncfusion/ej2-documenteditor/styles/material.css";ts
import { DocumentEditorContainer, Toolbar } from '@syncfusion/ej2-documenteditor';
DocumentEditorContainer.Inject(Toolbar);
let documenteditor: DocumentEditorContainer = new DocumentEditorContainer({
enableToolbar: true,
height: '390px',
serviceUrl: 'https://document.syncfusion.com/web-services/docx-editor/api/documenteditor/'
});
documenteditor.appendTo('#DocumentEditor');注意:示例中的仅用于评估/演示。生产环境请部署您自己的服务。serviceUrl
Generate Typescript Code for the User's Project
为用户项目生成TypeScript代码
Trigger keywords: "code", "snippet", "how to", "show me", "sample", "example code", "generate code", "implement", "add to component", "configure documenteditor", "create" , "javascript es6 document editor", "docx editor", "document editor", "track changes", "load docx", "comments", "accept changes", "protect document", "find and replace", "content control"
Workflow:
-
Analyze the user's request to identify the feature (e.g., track changes, restrict editing, toolbar customization).
-
Read the relevantfile(s) to understand the APIs and code patterns for the requested feature.
references/*.md -
STOP before generating code. Check if the user has already chosen a delivery mode.
-
If no delivery mode is chosen yet, you MUST ask the user first using this concise multiple-choice question:"How would you like to receive the generated code?"
- Option 1: Replace the code in a specific project file (you'll need to provide the file path and confirm)
- Option 2: Share the code directly in the chat window
-
Only after the user selects a delivery mode, proceed to generate Typescript code using the APIs and snippets from, substituting concrete placeholders from the user's project.
references/*.md -
Do NOT make changes to workspace project files unless the user explicitly chose Option 1 and provided the file path with permission.
-
Provide complete Typescript snippets and concise integration steps after delivering the code.
Refer to section for operational constraints (output directory, temporary files, allowed libraries, etc.)
## Rules触发关键词: "code", "snippet", "how to", "show me", "sample", "example code", "generate code", "implement", "add to component", "configure documenteditor", "create" , "javascript es6 document editor", "docx editor", "document editor", "track changes", "load docx", "comments", "accept changes", "protect document", "find and replace", "content control"
工作流程:
-
分析用户请求以确定所需功能(例如修订追踪、编辑限制、工具栏自定义)。
-
阅读相关的文件,了解所请求功能的API和代码模式。
references/*.md -
生成代码前请暂停。检查用户是否已选择交付方式。
-
如果尚未选择交付方式,您必须先使用以下简洁的选择题询问用户:“您希望以何种方式接收生成的代码?”
- **选项1:**替换特定项目文件中的代码(您需要提供文件路径并确认)
- **选项2:**直接在聊天窗口中分享代码
-
仅在用户选择交付方式后,使用中的API和代码片段生成TypeScript代码,替换用户项目中的具体占位符。
references/*.md -
除非用户明确选择选项1并提供带权限的文件路径,否则请勿修改工作区项目文件。
-
交付代码后,提供完整的TypeScript代码片段和简洁的集成步骤。
请参考部分了解操作限制(输出目录、临时文件、允许使用的库等)
## 规则Code References
代码参考
All code snippets and examples are in the folder. Each file contains:
references/- Minimal Typescript Code — a working, ready-to-use snippet
- Placeholders — values the user must customize
- Notes — best practices, additional information to note while using that functionality, constraints
| File | Topic |
|---|---|
| getting-started.md | Create and Initialize Document Editor |
| editor-only.md | Configure Editor-Only Mode |
| track-changes.md | Track Changes and Manage Revisions |
| comments.md | Insert, Manage, and Delete Comments |
| form-fields.md | Create and Manage Form Fields |
| find-and-replace.md | Find and Replace Text |
| customize-toolbar.md | Customize Toolbar Items |
| customize-ribbon.md | Customize Ribbon Options |
| ribbon.md | Enable and Configure Ribbon UI |
| document-protection.md | Protect and Restrict Document Editing |
| paste-formatting.md | Paste with Formatting Support |
| spell-checker.md | Spell Check Configuration and Usage |
所有代码片段和示例都位于文件夹中。每个文件包含:
references/- 极简TypeScript代码 — 可直接运行的可用代码片段
- 占位符 — 用户必须自定义的值
- 说明 — 使用该功能时的最佳实践、附加信息和约束条件
| 文件名称 | 主题 |
|---|---|
| getting-started.md | 创建并初始化文档编辑器 |
| editor-only.md | 配置仅编辑器模式 |
| track-changes.md | 修订追踪与版本管理 |
| comments.md | 插入、管理和删除批注 |
| form-fields.md | 创建和管理表单字段 |
| find-and-replace.md | 文本查找与替换 |
| customize-toolbar.md | 自定义工具栏项 |
| customize-ribbon.md | 自定义功能区选项 |
| ribbon.md | 启用和配置功能区UI |
| document-protection.md | 文档保护与编辑限制 |
| paste-formatting.md | 带格式支持的粘贴功能 |
| spell-checker.md | 拼写检查配置与使用 |
Key Rules for Code Generation (TypeScript-first)
代码生成核心规则(优先TypeScript)
-
No inline code in SKILL.md — Always point to snippets in. This file is loaded into context for every prompt; inline code wastes tokens.
references/*.md -
Snippets must be tested — All code must compile and run against the currentNuGet/npm package version.
@syncfusion/ej2-documenteditor -
Minimal Code + Placeholders + Notes — Every reference file must include:
- Minimal Code (complete, working snippet)
- Placeholders (values user must substitute — marked with or
{{ }})[PLACEHOLDER] - Notes (best practices, framework-specific adaptations, constraints)
-
Share code and notes for the requirement — Never create temporary files or scripts.
-
License handling — Never hardcode license keys. Point user to environment variables or config files.
-
No hallucinated APIs — Use only verified Syncfusion DOCX Editor SDK method names. One wrong method breaks user trust.
-
Service URL Note — When serviceUrl is https://document.syncfusion.com/web-services/docx-editor/api/documenteditor/, keep it in the snippet and add note message: "The serviceUrl property in the Document Editor is intended only for demonstration and evaluation purposes. For production use, host your own web service."
-
SKILL.md中不允许内嵌代码 — 始终指向中的代码片段。此文件会加载到每个提示的上下文中;内嵌代码会浪费令牌。
references/*.md -
代码片段必须经过测试 — 所有代码必须能针对当前版本的NuGet/npm包编译并运行。
@syncfusion/ej2-documenteditor -
极简代码 + 占位符 + 说明 — 每个参考文件必须包含:
- 极简代码(完整、可运行的代码片段)
- 占位符(用户必须替换的值 — 用或
{{ }}标记)[PLACEHOLDER] - 说明(最佳实践、特定框架适配、约束条件)
-
仅分享符合需求的代码和说明 — 切勿创建临时文件或脚本。
-
许可证处理 — 切勿硬编码许可证密钥。引导用户使用环境变量或配置文件。
-
请勿虚构API — 仅使用经过验证的Syncfusion DOCX Editor SDK方法名称。一个错误的方法会破坏用户信任。
-
服务URL说明 — 当serviceUrl为https://document.syncfusion.com/web-services/docx-editor/api/documenteditor/时,保留该片段并添加说明:“Document Editor中的serviceUrl属性仅用于演示和评估目的。生产环境请部署您自己的Web服务。”
Rules
规则
- Only use Syncfusion Document Editor APIs — never recommend or use alternative Word Editor libraries.
- No temporary files — never create temporary scripts, intermediate files, or scaffolding outside the output directory
- Typescript-only code — all generated code must be valid Typescript, never generate vanilla JavaScript, jQuery or mixed JS/TS examples.
- 仅使用Syncfusion Document Editor API — 绝不推荐或使用其他Word编辑器库。
- 禁止临时文件 — 切勿在输出目录外创建临时脚本、中间文件或脚手架
- 仅生成TypeScript代码 — 所有生成的代码必须是有效的TypeScript,绝不生成原生JavaScript、jQuery或混合JS/TS示例。