GrapesJS 问题

已收录 3,464 个 GitHub 问题 370 个已解决 · 90 个待解决 搜索、筛选并探索经过实战检验的答案。

找到 877 个问题

🔍 question
#46082022年9月23日作者 FaisalShaikhHA4 个回答
1 个反应

从0.19.4升级到最新0.20.1后,图层管理器下的图标不再可见。

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 版本 104.0.5112.101(官方构建)(arm64) 可复制演示链接 截图:https://d.pr/i/AyHJyL 描述一下那个虫子 如何复现这个漏洞?升级到最新的葡萄品种。 预期的行为是什么? 图层管理器下的图标应该是可见的。 目前的行为是什么? 图层管理器下的图标是看不到的。 <img width=“1438” alt=“标记 2022-09-23 17 58 43” src=“https://user-images.githubusercontent.com/102785785/191963783-7a4295e1-1a97-483...

artf

谢谢@FaisalShaikhHA好的,我会修正的,因为这个规则很常见。

artf

你在这里看到的也是这种情况吗 https://grapesjs.com/demo.html?我能看清🤔那些图标

FaisalShaikhHA

不,演示页面的图标是正常可见的。 为了更新 Grapesjs,我先用“npm remove grapesjs”,然后用“npm install grapesjs”来移除旧版本,获取最新版本。 我还尝试删除node_modules中的 grapesjs 文件夹,然后用“npm install grapesjs”,但还是没有图标渲染。 我也用了“npm install grapesjs@latest”,但结果一样。 回到0.19.4版本后这个问题就解决了。

#46072022年9月23日作者 RomanGlazkov2 个回答
0 个反应

当带子元素移动时的 JS 错误

葡萄JS版本[x] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome v104可复制演示链接 https://grapesjs.com/demo.html描述一下那个虫子 如何复现这个漏洞?选择一个元素按住CTRL键,选择子元素尝试移动这些元素 预期的行为是什么? 编辑器不允许移动 目前的行为是什么? 搬家没有发生,但出现了 js 错误 ![偷看 2022-09-23 15-20](https://user-images.githubusercontent.com/66161402/191958965-85b27a78-9e0d-4598-9324-697d67aef2f2.gif)行为准则[X] 我同意遵守...

artf

我想我们应该避免一开始就选择已经选定组件的子节点。

ClaudeCode

谢谢你举报,@RomanGlazkov。 关于带子元素移动元素时出现的JS错误的好建议!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事...

#46062022年9月22日作者 bit-ocean2 个回答
0 个反应

“Commponent & JS”文档页面上的脚本延迟错误。

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 与问题无关 可复制演示链接 https://grapesjs.com/docs/modules/Components-js.html#basic-scripts 描述一下那个虫子 嘿,与其为这么小的变动创建拉取请求,我直接在这里分享。 Basic Scripts at https://grapesjs.com/docs/modules/Components-js.html#basic-scripts 的引入代码遗漏了一个关键词,可能会让新用户感到困惑或误导,因为页面上没有其他声明组件脚本的示例: “''js 型号:{ 默认值:{ 脚本, 行为准则 [...

artf

“脚本”就在上面 ![CCC](https://user-images.githubusercontent.com/11614725/192133350-34390584-4b07-4533-ac1b-15dcf33f1195.png) 附注:如果你不是在报告bug,可以使用讨论区

ClaudeCode

感谢你报告,@bit-ocean。 在“Commponent & JS”文档页面出现脚本延迟错误的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)—...

#46032022年9月22日作者 Akira-Kuru2 个回答
1 个反应

网页演示在Firefox上错误显示

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Firefox 105.0(64位)可复制演示链接 https://grapesjs.com/demo.html描述一下那个虫子 如何复现这个漏洞?在Firefox中打开演示页面(https://grapesjs.com/demo.html)。 预期的行为是什么? 工具栏没有放大到你看不到网站的程度。 目前的行为如何? 工具栏的放大幅度肯定比平时高出300%。 Google Chrome 示例: ![正确](https://user-images.githubusercontent.com/7903248/191632720-57ebb0fb-6cef-...

artf

是的,谢谢@Akira-Kuru在这里解决了这个问题 https://github.com/artf/grapesjs-preset-webpage/releases/tag/v1.0.2

ClaudeCode

谢谢你举报,@Akira-库鲁。 关于 Firefox 上网页演示错误显示的问题,真是个好问题。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('somethi...

#46012022年9月21日作者 bit-ocean4 个回答
1 个反应

在切换某些目标时,添加到样式管理器的自定义类型 update() 不再被触发。

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬104 可复制演示链接 https://jsfiddle.net/aw8p0h9j/ 描述一下那个虫子 如何复现这个漏洞?打开 jsfiddle 链接。点击两个div之间,然后在任一div和背景之间点击。 预期的行为是什么? 在较早的 grapesjs 版本(0.17.26)中,更新会被触发,控制台记录点击,执行 update() 代码。 目前的行为是什么? 在 grapesjs 0.20.1 版本中,切换不同目标时更新不会触发,至少在 1 个目标之间是这样。组件无房产价值,2.组件价值相同,...... JS: “''js const edito...

ronaldohoch

和这里描述的一样,没问题:https://github.com/artf/grapesjs/issues/4350

artf

是的,但即使是自定义UI,如果值没变,更新也会被跳过,因为没必要。

bit-ocean

我粘贴的代码是用标准API,基本上是从文档里复制粘贴的。显然,更新的机制在不同版本之间已经发生了变化。 之前如果目标元素被更改,更新会被触发,我们可以运行代码在特定条件下重新渲染组件。@artf你现在会提出什么最佳替代策略?我应该添加自定义监听器来针对变更事件吗?你有什么建议的实现方式,才能确保更好地跟进Grapesjs的核心变更? 简而言之,当目标被更改时,我需要能够调用可调用的对象,同时获取并设置自定义类型输入的值。

#46002022年9月20日作者 Aventrue3 个回答
0 个反应

从 0.19 更新到 0.20 后,会出现错误:Cannot assign to only only 属性,object '[object Object]' 的默认值

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 镀铬 可复制演示链接 没有 描述一下那个虫子 ![图片](https://user-images.githubusercontent.com/17627637/191345937-46111515-ce5f-4cb4-a52c-e9300751717f.png) image.js: ![图片](https://user-images.githubusercontent.com/17627637/191346008-51a5519f-0a82-462e-9c00-904dc41602f8.png)行为准则 [X] 我同意遵守本项目的行为准则

collins-lagat

新闻稿中说有重大变更。试试看,看看问题是否会消失。我也遇到同样的错误,但还没试过修复方法。 https://github.com/artf/grapesjs/releases/tag/v0.20.1

artf

是的,正如发布说明中提到的,自定义组件注册必须从旧的遗留API切换。

ClaudeCode

谢谢你举报,@Aventrue。 从 0.19 更新到 0.20 后,出现“无法将只读属性 assign to read only”[object Object]' 的错误发生,这似乎是一个竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请...

#45922022年9月15日作者 harsh2011 个回答
0 个反应

文本组件在文本块中丢弃后变为不可编辑

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 104.0.5112.102 可复制演示链接 https://jsfiddle.net/harsh201/obng5cy2/ 描述一下那个虫子 如何复现这个漏洞?在文本块内拖拽“Textable Component”。尝试编辑可文本块内的文本。 预期的行为是什么? 当双击可文本组件时,光标应移动到可文本块,因为它正在扩展文本。 目前的行为是什么? 当双击可文本组件时,光标仍聚焦于父文本块,焦点不会切换到文本组件。 粗略浏览时,每当我们双击文本块时,“contenteditable”属性会变为true,允许用户编辑该文本块。同样的行为也适用于嵌套在文本...

ClaudeCode

谢谢你举报,@harsh201。 关于文本组件在文本块中丢弃后变成不可编辑的建议很棒!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事件...

#45882022年9月14日作者 wunksert2 个回答
0 个反应

API 文档配置对象链接失效

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 狩猎 可复制演示链接 https://grapesjs.com/docs/api/editor.html#editor 描述一下那个虫子 如何复现这个漏洞?访问 https://grapesjs.com/docs/api/editor.html#editor在第2行和第33行点击“配置对象”。 或者访问此链接:https://github.com/artf/grapesjs/blob/master/src/editor/config/config.js 预期的行为是什么? 加载配置对象参考 目前的行为是什么? Github页面上的404 如果需要执行...

artf

谢谢@wunksert链接已经更新,下次发布时会修复

ClaudeCode

谢谢你举报,@wunksert。 关于API Docs配置对象链接坏了,这个问题很棒。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something ch...

#45802022年9月13日作者 Singwai2 个回答
0 个反应

如果提供了“mousePosFetcher”,调整光标的起始位置也应使用。

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 任何可复制演示链接 任何描述一下那个虫子 如果有覆盖功能,启动POS也应该使用'MosePosFetcher'方法,对吧?开始 Pos ![图片](https://user-images.githubusercontent.com/5863227/189769981-c1d875e4-beeb-44b4-9963-f4131f3c3d6f.png) https://github.com/artf/grapesjs/blob/dev/src/utils/Resizer.js#L278-L281当前 Pos ![图片](https://user-images...

artf

是的,你说得对,我会修好的,谢谢你的反馈。

ClaudeCode

谢谢你举报,@Singwai。 Resizer 光标起始位置的问题,如果提供了“mousePosFetcher”,也应使用。 似乎是竞赛条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(...

#45792022年9月13日作者 Singwai2 个回答
0 个反应

Resizer onEnd 回调应包含类似于 onStart 的 resizer 和 el 对象

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 任何可复制演示链接 代码请见截图描述一下那个虫子 有什么因素阻止我们在onEnd回调中添加调整尺寸和EL吗?因为我们正在重复使用缩放实例(除非是 forceNew)。我希望在调整尺寸结束时能清理一下调整尺寸的状态启动 https://github.com/artf/grapesjs/blob/dev/src/utils/Resizer.js#L295 ![图片](https://user-images.githubusercontent.com/5863227/189768636-903f2a1c-e99d-47dd-8f60-7ddbb9e1a61d....

artf

当然,我会补充,谢谢你的建议。

ClaudeCode

谢谢你举报,@Singwai。 Resizer onEnd 回调应包括 resizer 和 el 对象,类似于 onStart 的问题,似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复...

浏览所有主题