Grapesjs 在 html 中用 localStorage 在 ID 上添加“-2”
只有在你附加包含已定义 ID 的 HTML 时才会发生,所以编辑器会递增它以避免冲突。 你确定不会重复添加相同内容吗?! 无论如何,进行检查的函数在这里: https://github.com/artf/grapesjs/blob/dev/src/domcomponents/model/Component.js#L1262 这里用的是(添加新内容时): https://github.com/artf/grapesjs/blob/dev/src/domcomponents/model/Components.js#L51
阅读下方完整回答 ↓问题
我试着在你的演示中复现这个问题,但没成功,但现在遇到了最奇怪的问题。 我希望你能在调试时指点我正确的方向。
一旦我把html存到localStorage并刷新页面(你会看到屏幕录制中短暂停顿),grapesjs会神奇地在HTML中的每个ID上加上“-2”。请看下面的屏幕播放:

你能想到这可能出现在你的代码中哪里吗?为什么?我该如何避免这种情况?
谢谢@artf
回答(3)
只有在你附加包含已定义 ID 的 HTML 时才会发生,所以编辑器会递增它以避免冲突。 你确定不会重复添加相同内容吗?!
无论如何,进行检查的函数在这里: https://github.com/artf/grapesjs/blob/dev/src/dom_components/model/Component.js#L1262
这里用的是(添加新内容时): https://github.com/artf/grapesjs/blob/dev/src/dom_components/model/Components.js#L51
你用的是最新版本吗?
@artf,是的,我有。0.15.9,虽然之前的版本也是一样。我尝试移除所有插件以保持系统非常干净,但只要生成localStorage,仍然会出现这个问题。有人知道为什么或者在哪里生成这个功能以便我调试吗?
相关问答
通过相似的问题讨论继续研究。
问题 #2834
Grapesjs 不会为包装器初始化样式
你好,我遇到了一个 bug grapesjs 无法初始化 wrapper 的样式。繁殖步骤:前往 https://grapesjs.com/demo.html选择包装并设置背景。它会为样式添加“正体”规则,并且会显示在样式设置中刷新页面——“正文”规则依然存在(你可以在“查看代...
问题 #1797
内部拖放出现奇怪问题——内容丢弃 === “null”
你好@artf, 我遇到了一个非常奇怪的问题,与HTML5拖放有关。 当我用鼠标选择 grapesjs中混合内容,包括可编辑的文本内容和周围的组件作为整体选择时,丢失(复制)的内容有时是“null”(包含“null”文本值的字符串,而非JavaScript的null)。 我已经...
问题 #4559
RTE actions are not working after the first time
嗨..!,RTE操作第一次后就不起作用了,当我们尝试对之前应用的元素应用该动作时,它无法正常工作 从版本0.18.3到最新版本都会出现这个问题,以下版本运行正常 复制链接 工作版本: https://jsfiddle.net/76gnxh4d/35/ 无法正常工作的版本: ht...
问题 #4024
当将文本粘贴到文本中时,视图会滚动并失去焦点
GrapesJS 版本 [X] 我确认使用最新版本 GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 https://grapesjs.com/demo-newsletter-editor.html 描述一下那个虫子 如何复现这个漏洞?https://grapesjs...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
教程
Introducing Search on GJS.Market
GJS.Market now has one search across everything we publish — plugins, articles, community questions, guides, authors and services. Press ⌘K from any page.
教程
GJS.Market Is Now Available for India 🇮🇳
GJS.Market is expanding its global presence with a dedicated experience for developers, agencies, SaaS companies, and digital creators in India
教程
如何在2026年用 GrapesJS 构建AI驱动的页面构建器
我们构建GJSDocs的经验——从简单的AI文本生成到结构化、上下文感知的视觉编辑
浏览插件分类
直接跳转到市场上的插件分类页面。