FEAT:增加对自定义RTE API承诺的支持
问题
你想给GrapesJS添加什么? 支持基于承诺的 API 的富文本编辑器。
详细描述你的功能需求详细 CKEditor5 的“Editor.create”和“Editor.destroy”方法返回一个“承诺”,当编辑器完全创建或销毁时才会解决。这会导致销毁编辑器(完成组件编辑)时出现问题,因为 GrapesJS 在 'Editor.destroy' 承诺尚未解决之前就同步了修改到模型,导致 CKEditor HTML 写入模型。
作为一个变通方法,你可以在承诺解决后再次同步内容,但如果API支持承诺会更干净。
我们可以以向后兼容的方式添加这一点,比如检查RTE的“使能”和“禁用”方法的返回值是否可,如果是,则等待承诺解析后再继续。
GrapesJS会考虑支持这个吗?
最新版本有替代方案吗? 不
这是否与某个问题有关? https://github.com/artf/grapesjs/issues/1516 https://github.com/artf/grapesjs/issues/1236
回答(3)
是的,说得通,我建议你先试着让ComponentTextView中的启用/禁用方法默认异步而不破坏系统,但确认是否可行总是个选项。
这本应已经是可行的。
谢谢你举报,@martijnc。 关于FEAT:支持自定义RTE API的承诺,真是太棒了!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事件进行细致跟踪 构建一个插件,扩展编辑器并具备此功能 正式宣布: 如果此功能能惠及更多用户,考虑在 GrapesJS...
相关问答
通过相似的问题讨论继续研究。
问题 #3206
FEAT:页面管理器插件
功能: 可以用Grapesjs创建多个页面。功能设计 全球范围:[ ] 在顶部横幅“设备[下拉列表]”右侧添加一个链接,上面写着“当前<page-name>页面”。[x] 在右侧列“方块”右侧新增菜单项。图标会类似于[FA页面图标](https://fontawesome.co...
问题 #4503
CKEditor 在添加原始 HTML 组件时使用的缺少内联样式
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 v96 可复制演示链接 https://grapesjs.com/demo-newsletter-editor.html 描述一下那个虫子 如何复现这个漏洞?在控制台标签页打开开发者工具运行下...
问题 #3496
成就:标记组件为脏
你想给GrapesJS添加什么? 组件应该能够标记自己为脏,触发“onbeforeunload”警告信息。 详细描述你的功能需求详细 我有一个(自定义)文本组件,用户可以输入任意文本。我把数据存储在服务器上,我想要自动保存。不过,我不希望服务器因为每一个字符都被联系到文本组件,...
问题 #3194
我该如何重新利用Spectrum色彩选择器?
我想重新利用GrapesJS中使用的色彩选择器。 我必须用颜色选择器来设置一些项目的关卡设置。这些设置可以通过GrapesJS编辑器访问。我想利用现有用于字体颜色等特性的颜色选择器。 我看到过[这篇帖子](https://github.com/artf/grapesjs/iss...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
教程
Super Tooltip for GrapesJS — Version 0.1.5 Released 🎉
We’re excited to announce the v 0.1.5 update of Super Tooltip, our floating‑menu and tooltip plugin for GrapesJS
教程
GrapesJS in 2026: The Complete Guide to the Open-Source Web Builder Framework
Master GrapesJS in 2026. Architecture, code examples, React integration, plugin development, Studio SDK, and how it compares to other projects
浏览插件分类
直接跳转到市场上的插件分类页面。