Pasting a component in root body layer throws TypeError
谢谢@zachsnoek,是的,因为包装器(正体)是根组件,它没有相关的集合。 可能我们需要更新粘贴逻辑,但你目前的修复是个不错的补丁,可以避免这种错误,所以PR非常受欢迎 👍
阅读下方完整回答 ↓问题
GrapesJS 版本 [X] 我确认使用最新版本 GrapesJS 你用的是什么浏览器? Chrome v89 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这个漏洞?在官方演示中,进入图层管理器,用 cmd+c复制任意图层 点击根“Body”图层,粘贴 cmd+p进入浏览器控制台查看错误 预期的行为是什么? 贴上身体层可能不被允许,但不应该出错。 目前的行为是什么? 粘贴根 Body 层会抛出以下异常: 错误来自[paste commend](https://github.com/artf/grapesjs/blob/d97efb31080f937f980ed79b9d4bda53dedfa4a5/src/commands/view/PasteComponent.js#L12-L13); comp.collection 未定义。 我对这个代码库了解不够,不知道 .collection 是否应该返回该组件的子代码。我们通过覆盖粘贴命令并添加以下保护措施暂时解决了这个问题: 如果这是个好办法,告诉我,我很乐意开永久居民。 行为准则 [X] 我同意遵守本项目的行为准则
回答(4)
谢谢@zachsnoek,是的,因为包装器(正体)是根组件,它没有相关的集合。 可能我们需要更新粘贴逻辑,但你目前的修复是个不错的补丁,可以避免这种错误,所以PR非常受欢迎 👍
谢谢@zachsnoek是的,因为包装器(主体)是根组件,所以它没有相关的集合。可能我们需要更新粘贴逻辑,但你目前的修复是个不错的补丁,可以避免这种错误,所以PR非常受欢迎 👍
听起来不错;我会在本周末前刷新个人纪录 :+1:
伙计们,我也遇到类似的问题 对我来说,错误发生在FileUploader上  我试着在Grapes Demo里输入,看看那里是否也会出现这种情况,结果确实发生了! 我意识到如果我清理LocalStorage并重新加载页面,编辑器会加载标准模板,我可以在模板里放置任何合适的块,但如果我清理编辑器并尝试在编辑器里放置文本块,编辑器会保存一个HT...
谢谢你举报,@zachsnoek。 关于在根体图层粘贴组件会触发TypeError的建议很棒!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事件进行细致跟踪 构建一个插件,扩展编辑器并具备此功能 正式宣布: 如果此功能能惠及更多用户,考虑在 GrapesJ...
相关问答
通过相似的问题讨论继续研究。
问题 #3861
按“s”或“w”键时 JS 错误——无法读取未定义属性(读取“indexOf”)
GrapesJS 版本 [X] 我确认使用最新版本 GrapesJS 你用的是什么浏览器? Chrome 版本 94.0.4606.81(官方版本)(64 位) 可复制演示链接 https://jsfiddle.net/szLp8h4n 描述一下那个虫子 如何复现这个漏洞?选择...
问题 #6582
不提供单指针操作模式用于编辑元素拖拽操作。
GrapesJS版本 [x] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Edge:版本 135.0.2535.51(官方构建)(64 位),Chrome 版本:版本 135.0.6422.112(官方构建)(64 位) 可复制演示链接 https://app....
问题 #6086
无法读取未定义属性(读取“lastComponent”)和可调整大小的功能无法使用
GrapesJS版本[X] 我确认使用最新版本GrapesJS你用的是什么浏览器? Edge v128可复现演示链接https://codesandbox.io/p/devbox/github/jdkcoder/cv-builderhttps://stackblitz.com/...
问题 #5775
Component.get('traits').clone() 已不再可用。
GrapesJS 版本 [X] 我确认使用最新版本 GrapesJS 你用的是什么浏览器? Arc 版本 1.35.0 / Chromium 引擎 123.0 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这个漏洞?开放...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
教程
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.
教程
2026年构建一个SaaS页面构建器需要多少钱?
2026年构建一个SaaS页面构建器的成本是多少?探索实际的开发成本、时间表、功能,以及使用 GrapesJS 如何降低成本
教程
PageKit:你无论如何都得自己开发 GrapesJS 应用
一个围绕开源GrapesJS核心的源代码可用Next.js应用——发布、自定义域名、潜在客户、结账和插件加载器。
浏览插件分类
直接跳转到市场上的插件分类页面。