粘贴内容
外部粘贴会执行语义清理,包括常见网页和 Office 内容。纯文本粘贴用于只保留文字的工作流。
已经存储的 CMS HTML 使用 setData() 加载,不应通过外部粘贴清理流程重新处理。未知、无效和不安全 HTML 是不同状态,不能统一删除。
带图片的粘贴需要上传适配器。测试宿主常用的 Word、电子表格和浏览器来源;自动化测试不能证明所有 Office 版本一致。
1.6.0:每次粘贴选择
升级到 1.6.0 后,可通过 config: { cms: { paste: { prompt: true } } } 启用外部富文本粘贴选择。默认关闭,已有集成仍自动进行语义清理。
- 保留格式:保留可用结构、class 和安全样式,仍过滤危险脚本、事件属性和网址。
- 清理格式:按宿主的语义策略及
retainStyles、retainAlignment设置处理。 - 仅保留文字:使用剪贴板文字;纯文本 HTML 源码按文字插入,不解析标签。
普通文字、内部复制及文件粘贴维持原流程。取消或 Escape 不修改正文;确认只产生一次可撤销操作。正文替换、切换模式、只读、后续粘贴或销毁使待选操作失效。选择不会改变宿主默认策略。
剪贴板未携带的外部 CSS 不会自动导入;保留格式不保证复刻整个网页设计。对话框按需加载,不执行剪贴板 HTML。
ts
export async function pasteChoice(host: HTMLElement) {
return createClassicEditor(host, {
config: { cms: { paste: { prompt: true } } },
});
}