GrapesJS 问题

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

找到 231 个问题

🔍 general
#32052020年12月22日作者 OleksandrNeroda4 个回答
0 个反应

带纽扣

https://grapesjs.com/demo.html 当我编辑按钮文字为“测试”时 重新加载后,结果如下: ![图片](https://user-images.githubusercontent.com/14879734/102893138-55630000-4461-11eb-9ca8-7918610915aa.png)

OleksandrNeroda

@artf你能帮忙吗?

fzerman

这个演示会将你的更改保存到浏览器的本地存储中。如果你没保存,那是正常的。试着在控制台里保存或运行“editor.store()”。

OleksandrNeroda

@Swindler36我的项目里我不使用本地存储,所有内容都保存到数据库里,但问题依旧。我觉得这不是本地存储的问题。

#32032020年12月21日作者 MariusDK4 个回答
0 个反应

自定义块类别问题

你好, 我想在块的类别中添加属性,但这些属性没有应用。

MariusDK

@artf有什么建议吗?

artf

请详细说明你想达到的效果。

MariusDK

我想在块的分类上添加一个 html 属性,比如 Basic Category 。 类似这样的内容 ![图片](https://user-images.githubusercontent.com/26068332/103411637-aa95c480-4b79-11eb-8433-335622478e51.png)

#31992020年12月19日作者 mohd74692 个回答
0 个反应

方块渲染函数,不是触发器

@artf - 文档里说,如果需要自定义每个块预览的方面,可以在块里传递渲染回调函数。 但实际上,我把这个渲染回调包裹在一个叫 func() 的函数里,然后调用某个 ajax 请求 如果我在页面加载时调用它,它能正常工作,但如果我在页面加载后调用这个 func() 函数,针对某个点击事件/处理程序或 API 响应,这个函数内部的 render 回调不会被触发 ![图片](https://user-images.githubusercontent.com/12613564/102699399-34828b00-4266-11eb-93eb-ce102028baf0.png)

artf

如果你这样做,块管理器不会看到“block.attributes.render = ...”的更改。 你必须以以下方式明确更新该属性: “''js block.set({ 渲染:() => { 返回“<div>NEW HTML</div>” } }) ``` 而且要小心,渲染函数应该返回HTML字符串或DOM节点,而不是Promise。如果你需要做异步操作,先解决它,然后再用返回的内容更新渲染。

ClaudeCode

谢谢你举报,@mohd7469。 感谢你分享关于块渲染功能不触发的报告。为了帮助团队调查并优先排序: 请提供: 一个最小可复现的例子(CodeSandbox/JSFiddle) 你的GrapesJS版本号 浏览器和操作系统信息 浏览器控制台的任何错误信息 重现问题的步骤 最有帮助的是什么: 简约代码示例(不是你整个项目) 屏幕录制或截图显示问题 明确区分预期行为与实际行为 你正在使用的GrapesJS配置 有了这些细节,维护者可以更快地识别和优先排序修复。GrapesJS团...

#31982020年12月19日作者 mprince2k182 个回答
0 个反应

无法获得内联CSS代码。如何使用这个?

当我运行内联CSS的Command时,它会给我一个警告且未定义。

artf

没有内置命令可以获得内联CSS,但你可以在新闻通讯插件中找到实现方式: https://github.com/artf/grapesjs-preset-newsletter/blob/master/src/openExportCommand.js 核心功能是通过使用“juice”包完成几行代码 “''js 从“juice”进口果汁; // ... const getInlineed = (editor) => { const html = editor.getHtml();...

ClaudeCode

谢谢你举报,@mprince2k18。 关于无法获得内联CSS代码的好问题。如何使用这个?。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('som...

#31952020年12月19日作者 henry9304 个回答
0 个反应

无法在 Grapesjs 下加载 JavaScript

Grapesjs面板下的JavaScript能加载吗?

fzerman

你好@henry930, 我通过开发一个装弹器解决了这个问题。 “''js let editorConfig = { 你的配置 } 设编辑器 = false; 函数 editorLoad(){ $(editorConfig.container).empty();与JQuery合作 editor = grapesjs.init(editorConfig); editor.load(); } editorLoad(); 你的编辑器会重新加载。你的html、css......将会...

artf

https://grapesjs.com/docs/modules/Components-js.html

Aze1337

我不明白四年过去了,为什么它还不支持导入用JavaScript渲染的单个HTML文件?大多数造型都非常不对劲

#31912020年12月18日作者 echobinod2 个回答
1 个反应

如何识别哪个块被拖入画布?

我想补充一个小的“if”条件,比如: 如果(块1被拖拽){ 表演模态 }

artf

你可以使用“block:drag:stop”事件 “''js editor.on('block:drag:stop', (component, block) => { // ... }) ```

ClaudeCode

谢谢你举报,@echobinod。 关于如何识别哪个块被拖入画布?的好问题。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something changed...

#31902020年12月18日作者 mshafiq2352 个回答
0 个反应

SRC 会自动添加到视频标签中

你好,@artf, 感谢你构建并维护了这个精彩的套餐。 问题 我正在使用 Nicepages 来构建模板并上传到我的网页应用。我已经集成了Grapesjs,管理员可以轻松编辑模板。我遇到的问题是 Nicepages 会添加以下视频标签 当这个模板在 Grapesjs 中打开时,grapesjs 会像这样在父“视频”标签中添加源代码 如果你能帮我解决这个问题,那就太好了。我很乐意用GrapesJS修复并发起拉取请求

artf

GrapesJS 中的默认视频组件处理方式不同(无源代码)。就你而言,我建议扩展默认版本,并添加对来源的支持。

ClaudeCode

谢谢你举报,@mshafiq235。 关于src自动添加到视频标签的建议很棒!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事件进行细致...

#31892020年12月16日作者 marcepoblet2 个回答
3 个反应

ChangesCount 是递增的,但不应用任何更改

[double-click.pptx](https://github.com/artf/grapesjs/files/5705054/double-click.pptx) 有没有可能,当你只双击某个组件时,“changesCount”参数并没有被递增? 当你双击且没有任何更改时,参数“changesCount”会被递增。 我在pptx文件里附上了视频,展示了这种行为。 这在任何浏览器中都是可以复现的。

artf

应该会在下一个版本中修复

ClaudeCode

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

#31842020年12月11日作者 sathyanarayananaCES4 个回答
1 个反应

点击关于将 grapesjs-style-bg 插件集成到网页构建器的问题

我使用的是 GrapesJS 版本(0.16.27),并且在编辑器中集成了 grapesjs-style-bg 插件。功能完全正常。但点击背景属性的标签页时,问题就出现了。它立刻切换了标签页。 尤其是在选择渐变选项时,我已经集成了插件,正如本[问题](https://github.com/artf/grapesjs/issues/2858)中提到的。我不确定我是不是漏掉了什么。在GrapesJS的演示中运行得非常好。 分析时发现点击事件被触发了多次,有没有什么钩子可以让我们在style-bg插件里监听标签页的点击图标,或者请告诉我如何更好地解决这个问题 请参阅附带视频以获得更清晰的问题 [video.zip](https://gi...

artf

谢谢你发的问题视频,但这对解决问题毫无帮助。如果你做不到可复现的演示,我帮不上忙。

sathyanarayananaCES

感谢@artf观看视频,我会尝试制作一个可复现的演示并附上这里。

no-response[bot]

由于我们请求原作者提供更多信息未获回应,本期已自动关闭。仅凭当前期刊中的信息,我们没有足够的信息采取行动。如果您有答案或找到我们需要的答案,请随时联系我们,以便我们进一步调查。

#31832020年12月11日作者 fzerman2 个回答
0 个反应

问题:如何创建新的自定义管理器?

你好,@artf, 我正在使用并开发葡萄树来做我的项目。我想添加一个新的管理器,让它叫“PackageManager”。不过,我找不到包含其他管理器的对象。 我如何将我的自定义管理器添加到葡萄?

fzerman

这期间,我尝试在 npm 上把我的自定义管理器添加到 grapesjs。 “''js 编辑/index.js ['Styles', 'StyleManager'], “设备管理器”, [“设备”,“设备管理器”], “PackageManager”,//此 ].forEach(prop => { 如果 (Array.isArray(prop)) { this[prop[0]] = em.get(prop[1]); 然而,我失败了。 这是我的测试代码: “''js 导出默认值...

ClaudeCode

谢谢你举报,@fzerman。 关于问题:如何创建新的自定义管理器? 非常好的问题。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something cha...

浏览所有主题