成就:标记组件为脏
问题
你想给GrapesJS添加什么? 组件应该能够标记自己为脏,触发“onbeforeunload”警告信息。 详细描述你的功能需求详细 我有一个(自定义)文本组件,用户可以输入任意文本。我把数据存储在服务器上,我想要自动保存。不过,我不希望服务器因为每一个字符都被联系到文本组件,因为那会是用户数量的巨大洪水。 我也不想更改“stepsBeforeSave”,因为像拖动组件这样的大改动应该立即保存。 目前,组件在用户离开文本组件时存储数据(设置模型上的“内容”键)。这方法有效,但当用户在文本组件仍处于焦点状态时重新加载页面,最新的更改不会应用到数据模型上。 这样可以,但我想弹出保存警告对话框(“onbeforeunload”消息)。然而,这不可能,因为 grapesjs 不知道即将发生的变更,所以它不会启用: https://github.com/artf/grapesjs/blob/88249c38577852dc3c42047356a70a12066ee6ca/src/editor/model/Editor.js#L183-L196 我不能简单地增加“changesCount”来触发对话,因为那样会触发存档(我不想这样)。 如果组件能声明自己是脏的(有未保存的更改),那就更好了。 最新版本有替代方案吗?[X] 是的(描述替代方案)[ ] 不 我可以在编辑器配置中将“noticeO...
回答(4)
我通过完全关闭“on-andload”处理,自己滚动来解决这个问题。
编辑器有“编辑”属性,只要启用或禁用RTE就会改变,所以我猜在你的情况下,这个功能应该可行 “''js editor.on('' change:editing', (em, editing) => { window.onbeforeunload = 编辑 ||editor.getDirtyCount() ?e => 1 :零; });
这个在 onbeforeunload 处理程序之后不会被我上面提到的那个片段覆盖吗?
谢谢你举报,@anlumo。 关于FEAT:标记组件为脏的好建议!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事件进行细致跟踪 构建一个插件,扩展编辑器并具备此功能 正式宣布: 如果此功能能惠及更多用户,考虑在 GrapesJS 仓库上正式开启功能请求,...
相关问答
通过相似的问题讨论继续研究。
问题 #3714
部分解析
讨论于 https://github.com/artf/grapesjs/discussions/3711 <div type='discussions-op-text'> <sup>最初由 ltenti 于 2021 年 8 月 17 日发布</sup> 大家好, 我想知道如...
问题 #3206
FEAT:页面管理器插件
功能: 可以用Grapesjs创建多个页面。功能设计 全球范围:[ ] 在顶部横幅“设备[下拉列表]”右侧添加一个链接,上面写着“当前<page-name>页面”。[x] 在右侧列“方块”右侧新增菜单项。图标会类似于[FA页面图标](https://fontawesome.co...
问题 #3194
我该如何重新利用Spectrum色彩选择器?
我想重新利用GrapesJS中使用的色彩选择器。 我必须用颜色选择器来设置一些项目的关卡设置。这些设置可以通过GrapesJS编辑器访问。我想利用现有用于字体颜色等特性的颜色选择器。 我看到过[这篇帖子](https://github.com/artf/grapesjs/iss...
问题 #3939
在预览中禁用拖放功能
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 第95卷可复制演示链接 https://codesandbox.io/s/grapes-border-issue-forked-2c0ib?file=/src/index.js:10258-10261...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
教程
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
浏览插件分类
直接跳转到市场上的插件分类页面。