GrapesJS 问题

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

找到 3,464 个问题

#29122020年7月22日作者 perfectwebtech3 个回答
1 个反应

生物渲染

你好 和我能建造的那一样吗 https://biorender.com/ 比如在线设计建构器? 我可以用这个葡萄,或者有其他建议吗? 我也想做生物渲染,同样的问题,请帮帮我或建议我。

Ju99ernaut

我不推荐,'grapesjs' 主要是一个网站建设框架......我认为你需要类似SVG编辑器的东西。

artf

你其实可以在 GrapesJS 中使用绝对模式,但要像你举的例子那样让它好用还有很多工作要做,而且正如前面提到的,编辑器主要专注于网页项目。

perfectwebtech

哦,好的,非常感谢

#29112020年7月22日作者 FlowingCloudRTL1 个回答
0 个反应

BUG:通过在Firefox上拖拽组件实现无限递归

版本:0.16.18 你能重现演示中的bug吗? [X] 是的 [ ] 不 预期的行为是什么? 你不应该能把组件拖入自身 详细描述那个漏洞 在Firefox中,你可以直接点击元素,然后拖入组件内部,然后拖入自身。 这样可以去除该元素,产生无限递归。 你能附上截图、截屏或实时演示吗?** [X ![2020-07-22 00-53-18](https://user-images.githubusercontent.com/49292515/88136398-26491980-cbb7-11ea-89b4-896c25cd7e41.gif) ] 是的(附图) [ ] 不

artf

感谢你的报告@FlowingCloudRTL。这个问题将在下一个版本中修复

#29102020年7月21日作者 SintoDema3 个回答
0 个反应

资产管理处理中的问题

你好,@artf, 我现在正在我们的应用程序中实现 grapesjs。我已经查阅了提供的文件和一些关于资产管理公司(https://github.com/artf/grapesjs/issues/216)的问题报告。在硬刷新列表消失后,我无法在资产管理器中显示上传图片列表。 我尝试上传文件到 AmazonS3,上传没问题,也收到了回复,而且它也显示在列表中。这次因为CORS问题,我无法编辑图片。 后来,我尝试用 base64 编码的镜像。通过这种方法,我能够编辑上传的图片。图片列表里也有。正如我之前说的,图片列表只能在硬刷新前使用。我觉得是缓存里的。 我对一些代码有疑问,你能帮我解决吗? 这是“资产管理人”部分代码: 我对以下情况...

artf

“上传 : siteURL+'assets/CONTENT/img”,这是图片上传路径还是上传图片的功能? 图片上传路径如果我用的是 AmazonS3,能不能在 CORS 问题下获得编辑选项? 如果你试图直接从浏览器上传到 S3(没有端点作为代理),你是做不到的(这也是 CORS 存在的原因)。所以,把文件发送到你的端点,然后你可以用后端脚本做任何你想做的事如何在资产管理器中显示上传的图片而不让图片以后消失? 从你的存储加载它们,并通过API添加到资产管理器

SintoDema

你好@artf, 谢谢你的回复。如果你试图直接从浏览器上传到 S3(没有端点作为代理),你就做不到(这也是 CORS 存在的原因)。所以,把文件发送到你的端点,然后你可以在后端脚本里做任何你想做的事。 我正在将文件从资产管理器上传到一个临时文件夹,然后我们会把它迁移到亚马逊S3。文件上传在亚马逊S3上运行良好,并且在资产管理器中显示,但CORS显示在我们编辑该图片的时间。 正如你在我的代码中看到的(console.log()是在我尝试添加到Asset之前添加的),这个回复让...

artf

图片的网址将来自亚马逊S3 https://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html#how-do-i-enable-cors

#29092020年7月21日作者 tvvignesh2 个回答
0 个反应

FEAT:支持编辑器中自定义组件的搜索和命令

嗨。首先,葡萄的精彩工作令人赞叹。有一个功能请求,可能会大大提升用户的可用性。 虽然 grapesjs 允许对以下成分进行分类: ![截图来自2020-07-21 13-55-26](https://user-images.githubusercontent.com/1165845/88031174-db4ce900-cb59-11ea-98ad-4fd3c95b40ee.png) 如果支持搜索组件导入和导入,那就太好了(侧边栏的普通过滤器也可以)。这样即使有数百个方块,我也能搜索并导入所需,而不是逐层挑选。 另外,如果你用过像“notion.so”这样的编辑器,它们支持通过输入编辑器时输入“/”命令来添加组件。这些功能也可以添加...

artf

你好@tvvignesh这确实有道理,但你也知道,UI相关的事情很容易有争议,所以需要大量代码来尽可能多地自定义。 到目前为止,我已经停止在核心中添加UI内容,而是开始让它更偏向API,事实上你应该可以通过使用[Blocks API](https://grapesjs.com/docs/api/block_manager.html 实现),这和我们在Grapedrop里做的一样 ![方块搜索](https://user-images.githubusercontent.co...

tvvignesh

@artf 感谢你的建议。我会尝试用Blocks API实现。 不过我有个问题。既然我想通过搜索截图中的方块来添加光标所在位置的方块,请问你推荐用什么方法使用方块 API? 你是先获取 JS 光标位置 X,Y 坐标再添加,还是有办法找到光标所在的容器?如果你能提供一些建议,告诉我如何确定该在哪里加块,我会自己试着实现看看效果如何。谢谢。

#29082020年7月21日作者 neon123453 个回答
0 个反应

专长:将getDirtyCount与撤销/重做结合起来

目前,变化计数只会增加,无论撤销和重做。我想知道是否有应用中实际值被使用,还是这只是一个布尔值指示器。 如果只是作为布尔值使用,也可以在撤销状态中添加一个标志并标记保存的位置。这样,只有当撤销栈没有指向撤销和重做时保存的位置时,才能发出更改信号。 类似这样的方法似乎很有效: var um = 编辑。UndoManager; var 变点 = null; var hasChange = false; 函数 findChange() { var s = um.getStack(); var idx = s.pointer; var old = hasChange; 如果(idx != -1) { hasChange = 变点 !==...

mcottret

你好@neon12345! 据我所知,'changesCount' 也会和'stepsBeforeSave'一起使用,在启用'自动保存'时触发存储。 (参见:https://grapesjs.com/docs/modules/Storage.html#store-and-load-templateshttps://github.com/artf/grapesjs/blob/dev/src/editor/model/Editor.js#L170 ) 干杯!

neon12345

好的。但这意味着撤销和重做总是会触发自动保存,这并不是最优选择。

artf

getDirtyCount 返回变更次数,因此不用作布尔值。 如果你有更好的撤销/重做更改方案,欢迎PR

#29062020年7月21日作者 neon123453 个回答
0 个反应

BUG:editor.refresh() 在自定义设置中无法正常工作

我遇到了一个自定义设置的问题,画布iframe用js在内面移动。“editor.refresh()”调用并不会修复移动后工具的位置。 我觉得问题出在刷新时偏移缓存没有被清除。 如果我在刷新前调用,工具的位置会如预期般: editor.trigger('test:canvasOffset'); editor.trigger('frame:updated'); 版本:0.16.18

artf

@nedim1511能提供一个可复现的演示吗?

neon12345

https://jsfiddle.net/3gqh6p5a/ 点击选择“Hello World”,然后向左拖动垂直分流器以调整分割窗口大小。dragEnd 上调用的“editor.refresh()”应该能对齐工具,但似乎没有效果。 在水平阻力调整尺寸时更明显。

artf

在我本地的版本里,你的例子是正常的,所以下一个版本可能会修复这个问题

#29052020年7月20日作者 krishnaeverestengineering1 个回答
0 个反应

有没有可能让 GrapesJS 块插入所见即所得编辑器内容中?

我想知道有没有办法在所见即所得编辑器中使用 GrapesJS。我们有一个CMS来写文章内容,但我们需要像GrapesJS那样的可调整大小的布局/容器模块。如何满足我们的需求使用 GrapesJS?

artf

这取决于你用的所见即所得编辑器

#29042020年7月20日作者 RJCAM1 个回答
1 个反应

BUG:在预览模式下拖动组件会启用编辑器模式

我们可以从[演示](https://grapesjs.com/demo.html)中重现这个漏洞。 当前行为: ![铬捕捉](https://user-images.githubusercontent.com/49693237/87928689-5b952080-ca6c-11ea-89e1-8437f82a0908.gif) 预期行为: 在预览模式下,我们不应该能拖动或移动组件。

artf

下次版本会修复。目前,你可以自己修补,方式如下: “''js const preventDrag = (opts) = > opts.abort = 1; Editor.ON('run:core:preview', () => { editor.on('run:tlb-move:before', preventDrag); }); editor.on('stop:core:preview', () => { editor.off('run:tlb-move:before',...

#29032020年7月20日作者 moemos2 个回答
0 个反应

FEAT:请提供PHP的示例图片上传器

你好,伟大的编辑! 如果有一个示例PHP上传脚本,能把图片上传到PHP网页服务器,那就太好了。 这可能是文档中解释正确配置的简单方案。对于初学者来说,很难弄清楚如何启用图片上传以及需要什么样的服务器/API。 谢谢! 最新版本有替代方案吗? [ ] 是的(描述另一种情况) [x] 不 这是否与某个问题有关? [ ] 是的(请提供本期链接) [x] 不

artf

抱歉,这完全离题了

moemos

抱歉:(

#29022020年7月18日作者 nlnbich1 个回答
0 个反应

FEAT:重置当前帧视图

版本:0.16.12 你能重现演示中的bug吗? [ ] 是的 [x ] 不 预期的行为是什么? 当前帧视图的重置窗口内容 详细描述那个漏洞* 我想实现一个组件,帮助用户通过在 widow 上附加事件(例如:scroll 或resize*事件)来帮助用户执行某些操作,或者在窗口中添加一些数据(例如:window.pageConfig = “abc”)。 该组件在不同页面中使用。但每次用户切换页面时,会有越来越多的处理器被附加,或者组件使用上一页的旧数据。 我尝试使用[clear-canvas]命令,但它只清除了dom元素和css规则。 我尝试添加一个新的帧视图来替换当前的帧视图,但我很清楚怎么正确操作。 你能帮忙给点建议吗? 谢谢

artf

你可以通过这种方式获得画布内窗,'编辑'。Canvas.getWindow()'

浏览所有主题