GrapesJS 问题

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

找到 1,399 个问题

🔍 outdated
#14192018年9月11日作者 Cosmograph3 个回答
0 个反应

你的网页出现了故障

这个漏洞相当讽刺。它在“https://grapesjs.com/”里。它在“响应式设计”部分;画面的一半——已经超出了屏幕右边的边界。我试穿了Pale-Moon和最新的FireFox。甚至没有滑块可以查看整张图片。

nojacko

我觉得这不是故障。这种“文字旁边图片”设计风格很常见。在小屏幕上你仍然能看到带有移动大小画布的剪辑师,而在大屏幕上你可以看到更多内容。重要的是,移动用户没有失去任何东西......响应迅速,做得对。😉

Cosmograph

我不是说编辑器(编辑器里也有部分文本看不见);更倾向于你的索引页面(见我发的链接)。 附言——那个页面上其他一些宽图也是如此。

nojacko

是的,索引页面看起来没问题,但如果你能提供截图,问题能被及时发现并修复,可能会有帮助。 (我不是项目的创作者或成员......只是个用户。)

#14182018年9月11日作者 ageir3 个回答
0 个反应

资产管理器除非上传触发,否则不会删除服务器上的文件。

在本地服务器上运行最新版本(0.14.29)。使用示例网页预设。Ubuntu 18.04,Chromium 68。 资产管理者初始化: 并扩展图片类型: all_files变量是从 php 加载的,数据和格式都正确,所有镜像都存储在服务器上。 问题是 onRemove 没有像应有的那样触发。图片在资产管理模态中显示正常,但按X键时功能没有触发。但它们在模态中被删除了,但重新加载页面时会重新显示。但如果我上传文件,那它就能正常工作了。确认弹窗显示,文件在服务器上成功删除。有人知道为什么会这样吗?我是不是漏掉了什么,还是这是个bug? 另外,当把图片拖到画布时,图片也不会显示出来。只有“缺失文件”ico和图片名称。 任何帮助都非常感谢!

artf

嗨,约兰但重新加载页面时会重新出现 你初始化资产管理器时有“资产:allfiles”,所以如果不改“allfiles”,你总是得到同样的图片集而且当拖动图片到画布时,图片也不会显示出来。只有“缺失文件”ico和图片名称。 为此,我想请求再做一期,也许还有演示版

ageir

@artf 我觉得你没听懂我说的话。它们之所以重新出现,是因为它们没有在服务器上被删除。 all_files通过 php 在页面重载时生成,并显示服务器上的正确文件。 问题是onDereek在上传文件之前根本不会触发,然后才会触发。这是为什么?

artf

啊,明白了,可能是因为你的资源已经渲染好了。试着在插件里应用这些更改

#14162018年9月11日作者 dsgh3 个回答
0 个反应

:除非用户愿意,否则不要轻易操作onbeforeunload。

我有自己的“window.onbeforeunload”处理程序,而且我没有把“noticeOnUnload”配置传递给 grapesjs,所以我不指望 grapesjs 会干扰它。 这次进来要做公关。

artf

谢谢Duarte,已修复,下一个版本会提供我没有把 noticeOnUnload 配置传给 grapesjs,所以我不指望 grapesjs 会干扰它。 补充说明,“noticeOnUnload”默认😬是“true”

dsgh

哎呀,我是说我把“通知OnUnload”当成“false”😁了 谢谢!

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#14142018年9月10日作者 gabrigcl3 个回答
0 个反应

组件“首次渲染”事件

嗨。我正在开发一个用chart.js图的插件。我需要在生成的组件中持久化图表模型,以便在背画布加载时渲染图表。为了实现这一点,我决定在组件的HTML署名中持久化图表模型。这是我配置图表后生成的组件 HTML(图表模型存储在属性“chartmodel”中): ![捕捉 2018-09-10 as 09 28 51](https://user-images.githubusercontent.com/7770605/45297543-1ac93980-b4dc-11e8-9bcf-cd33a74542de.png) 我的策略是,当组件首次渲染时,如果在组件的“chartmodel”属性内存在图表模型,那么图表会解析该属性的JSON字符...

artf

你可以用“onRender” “''js view: defaultView.extend({ // ... onRender() { const chartModelSaved = this.el.getAttribute('chartmodel'); 如果(chartModelSaved) { this.model.set('chartModel', JSON.parse(chartModelSaved)); this.model.set('chartType', th...

gabrigcl

谢谢,这个方法有效!不过,我必须把图表模型存储在组件的 html 里,这样生成的模板才能在 grapesjs 编辑器之外渲染图表。我无法像我想要的那样,在组件的自定义 HTML 属性中持久化任何内容: '''html <canvas chartmodel=“{chartType: doughnut}”> ``` 我有什么解决方案来满足这种需求?

artf

@gabrigcl我不明白现在哪一个才是问题......我无法像我想要的方式在组件的自定义 HTML 属性中持久化任何东西 但这正是你之前帖子里展示的,试着详细说明你需要什么,哪些做不到,现场演示会更好。

#14132018年9月10日作者 aj00222 个回答
0 个反应

如何改变特质的风格

你好,Artf, 感谢您的工作, 我想改变这些特质的风格。当用户选择视频或输入时,激活特质图标。当我们这样做时,用户会明白他们可以在哪里更改视频ID,也能更改地图。我该如何完成这些工作,请帮帮我,先生。另外,图片的替代标签也会改变特质视图。

artf

https://github.com/artf/grapesjs/issues/1412#issuecomment-420089769

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#14122018年9月10日作者 aj00222 个回答
0 个反应

关于性状的开放模型

你好,artf, 感谢大家的支持, 我请求你帮忙提供开放模态的特质。请帮我解决这个问题。

artf

@aj0022我帮不了你,建议你像其他人一样从文档开始 https://grapesjs.com/docs/getting-started.html

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#14112018年9月10日作者 zurp2 个回答
0 个反应

在打开 AM 弹窗后,需要手动触发资产管理渲染

问题 问:你用的是最新版本吗(旧版本不支持)? 答:是的 Q.你是在本地版GrapesJS遇到这个bug,还是当前的演示版? 答:本地副本,最新的 Chrome Linux 64位问题 通过“editor.runCommand('open-assets')”打开资产管理器时,它应该会自动渲染图片列表。现在我不得不在打开资产管理弹窗后调用 am.render() 才能让它工作。 可能的原因是什么?

artf

问题是目前“开放资产”无法正确处理默认的“类型”选项(我认为在这种情况下,它应该返回所有资产,甚至不包括图片)。我会在下一个版本中修正这个问题,但目前我认为更准确的做法是明确询问资产类型 “''js editor.runCommand('open-assets', { types: ['image'] }); ```

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#14092018年9月7日作者 YashPrince3 个回答
0 个反应

分量阻力事件

我想知道如何将该组件拖拽到另一个组件。如果在组件被拖拽到后变空,我需要添加一个类 外部元素。我能找到拖拽的组件和掉落的组件,但不能从拖拽的位置找到。任何帮助都将不胜感激。 ![变装表演](https://user-images.githubusercontent.com/40828744/45218205-64d7d280-b2c4-11e8-90f2-380b456221a5.png)

artf

就你而言,我觉得最好听内部组件的更改(比如如果我删除所有子组件怎么办?),但目前没有这样的事件,所以我会尝试在下一个版本添加它。应该是这样的 “''js editor.on('component:update:components', component => { 只需修改视图元素即可 const el = component.getEl(); const hasChildren = component.components().length; el.classList[h...

sakshigarg9

@YashPrince你是怎么获得被拖拽组件的ID,以及它被丢弃在哪里的?

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

#14082018年9月6日作者 Siddharth-ss422793 个回答
1 个反应

为什么文本元素被转换成了框?

你好@artf, 我正在使用 grapesjs 的通讯插件和 ckeditor 插件。我在Canvas里拖拽了TEXT元素,用ckeditor做了一些编辑。我已经把它连接到了数据库。每次我把内容保存到数据库,重新安装编辑器后,我会从数据库字段设置内容值,然后把TEXT元素转换成BOX。 不知道为什么TEXT元素会变成BOX,而且CKEDITOR也无法加载到那个BOX元素里??请帮帮我。 ![截图 2018-09-06 下午6:47 41](https://user-images.githubusercontent.com/13647531/45159639-f7b13800-b204-11e8-82b3-8231b43b0fb9....

artf

@Siddharth-ss42279 如果你需要编辑用GrapesJS创建的模板,你不应该使用它的HTML......你应该导入它的 JSON......所以你做错了 就像做这个 “''js el.addEventListener('点击',...); someOtheEl.innerHTML = el.innerHTML; ``` 然后抱怨为什么你的'El'没有点击监听器了......你只是抄袭编辑创造的所有信息。 点击这里阅读:https://grapesjs.com/...

artf

你的数据库里存储什么?HTML和CSS呢?

Siddharth-ss42279

你好@artf 实际上,我用命令编辑器获得内行HTML。Commands.get('gjs-get-inline-html').run(editor)',并保存到数据库,渲染内容时我用的是 'editor.setComponent(content_field)' 问题是当我从数据库渲染内容时,TEXT 元素会被转换成 BOX 元素 (只有当我用ckeditor编辑该文本元素的部分文本时)而在BOX元素ckeditor中则没有加载。 以下任何一种方法都能解决我的问题:TEXT...

#14072018年9月6日作者 jvillena2 个回答
0 个反应

每次保存HTML数据时都会增加额外的正文。

你好,@artf, 我遇到过一个问题:当我在编辑器里有表格时,我添加新行,如果我的表格在重新加载时被保存,表格会被多加一个 tbody 标签。 ![截图 2018-09-06 12 54 37](https://user-images.githubusercontent.com/1280854/45153451-501c1180-b1d4-11e8-89a6-ca3cbaf33c5d.png) 我不知道为什么编辑器会出现这种行为。 此致敬礼。

jvillena

你好,@artf, 如果我在 grapesjs 核心的 tbody 初始化方法中注释,问题就解决了。但我不明白,一旦你在没有确认 tbody 标签是否已经存在的情况下就加入了它。 ![截图 2018-09-06 16 25 43](https://user-images.githubusercontent.com/1280854/45163941-b6fbf380-b1f1-11e8-812e-e4f4cde8627d.png)

lock[bot]

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

浏览所有主题