#28612020年6月28日作者 makkaronis4e2 个回答
你好, 我正在尝试实现将元素保存为自定义块的功能。 我如何获取 component 及其子节点的 CSS?我可以递归地从每个嵌套组件中获取样式,但也许有办法能更简单地实现?
Ju99ernaut
“''js const component = editor.getSelected(); 设componentCss = 编辑器。CodeManager.getCode(component, 'css', { CSSC:编辑。CSS作曲家 }); ```
makkaronis4e
@Ju99ernaut谢谢!
#28602020年6月28日作者 MarlonV1231 个回答
这对FireStore很有帮助,因为我已经成功保存到Firestore数据库,现在我想知道如何从数据库加载这些值并以模板形式显示。我是新手,需要帮助,抱歉说得不好,这是我的代码。 我用的数据来自一个示例,所以别人是否看到其实无所谓
artf
你可以启用“autoload: true”,或者通过调用“editor.load()”来程序化加载数据
#28582020年6月26日作者 hellocaio2 个回答
新手问题,我把插件 'grapesjs-style-bg' 加到堆栈里,现在怎么在我的 StyleManager 里显示它? 我在初始化时从StyleManager重置所有扇区,然后用“styleManager.addSector(”id“, {...})逐个添加。`.
hellocaio
@pooriamo,谢谢兄弟!救命恩人!效果很好!:))) 也谢谢你的速查表,里面有很多好东西!
pooriamo
你可以从这里作弊:https://github.com/artf/grapesjs/blob/gh-pages/demo.html#L1127 你必须在 'buildProps' 数组中添加 'background-bg',然后在属性中配置,'type' 必须是 'bg':
#28572020年6月25日作者 makkaronis4e3 个回答
你好,我想使用 showComputed: false,以防止对绝对位置的右/左/上/下计数。 但当我用这个参数初始化 grapesjs 时,样式管理器不会显示平板/移动屏幕大小的 css-prop 值:  你可以在这里查看 https://codepen.io/makkaronis4e/pen/PoZjaXJ
makkaronis4e
在画布上加入某个元素添加一些样式(例如背景色)切换到平板/手机视图在样式管理器中检查样式道具值(它将是默认的)。
artf
啊,明白了,现在我明白了。不幸的是,显示不同视图样式属于“showComputed”功能的一部分,所以禁用它就是你得到的结果。
#28562020年6月25日作者 mcottret2 个回答
又见面了! 我们团队最近一直在尝试通过程序化方式更新 GrapesJS 的画布,避免意外触发“更新”事件。如果我们的理解正确,这意味着调用“setStyle”或“setComponents”时不会触发“更新”事件,无论当前的“stepsBeforeSave”和“changesCount”值如何。 经过一些研究,“避免商店”选项似乎很适合实现我们想要实现的目标,但问题是我们没有找到任何方法在当前的公共API中使用这个参数。 我们找到的一种潜在解决方案是将options参数暴露给['setStyle'](https://github.com/artf/grapesjs/blob/dev/src/editor/index.js#L306...
artf
是的,这些方法中有“选项”确实可能很合理,所以永久居民会很受欢迎。
#28552020年6月25日作者 i3laddin3 个回答
你好@artf 我已经用这个很棒的工具很久了 我把它和 React 集成,创建了一个 React 插件组件,创建自定义特性来从 API 获取数据并渲染插件,我设置了一个本地存储,还做了一个按钮把所有数据保存到本地存储和数据库里 但我有个小问题,当我重新加载页面时,自定义组件的所有数据都消失了,加载默认设置时,尽管其他插件在重新加载页面时仍保留自己的数据,抱歉如果我没有按照模板来处理这个问题,这是我第一次在 git 上发帖, 所以如果我犯了错,告诉我,我会帮你解决的 谢谢 @artf
artf
肯定是你没有正确配置存储管理器 请仔细阅读本指南 https://grapesjs.com/docs/modules/Storage.html
i3laddin
谢谢@artf回答,我知道你有多重视时间,但抱歉,我配置正确了,另外我收到了200的后期请求,我还能拿到所有的HTML和组件和CSS来加载请求,但我在组件的前述特征和渲染前数据方面有点问题  会更容易。
artf
是的,不幸的是,@Ju99ernaut说得对! 可能很快我会开始开发StyleManager API,它将允许类似Traits的自定义水平
#28532020年6月24日作者 mikeholczer3 个回答
我注意到 https://github.com/artf/grapesjs/issues/74 中提到迁移到基于Pell的编辑器时,提到使用Document.execCommand是个缺点。我现在看到根据 https://developer.mozilla.org/en-US/docs/Web/API/Document/execCommand,它被视为过时,所以我们想知道你们是否有计划更换编辑器?
artf
我想避免把外部库放进核心库里(事实上我们还是得提取一些)。 如果你需要 Quillj,可以尝试把它添加为自定义 RTE。 我关闭它,因为没有真正的原生API替代品(很遗憾)
artf
我们想知道你有没有打算换个新编辑? 新编辑?还有什么替代方案?
mikeholczer
你还想了解哪些额外信息?我快速谷歌了一下,发现 https://quilljs.com/ 在GitHub上快速搜索了它的源代码,我看到execCommand的唯一用途是 https://github.com/quilljs/quill/blob/fd400525d551315b6fa9a4d4783e1c7dbad57827/formats/image.js#L32,听起来影响很小。
#28522020年6月23日作者 RJCAM2 个回答
你好,我正在尝试同时启用多个自定义面板按钮。我觉得当我用下面的代码创建自定义面板按钮时,它们的行为会和普通的 HTML 无线电输入一样,意味着你只能选择一个,不能选择更多。请看下面的示例,当我尝试启用两个按钮,但一个按钮会禁用另一个时:  我想同时启用这两个按钮,有没有什么属性可以添加来实现这一点? 以下是我制作面板按钮的方法。
RJCAM
谢谢你,@Ju99ernaut,这正是我需要的。
Ju99ernaut
你必须为每个按钮添加不同的“上下文” “''js 编辑。Panels.addButton('options', [{ //... 上下文:“某串”, // ... }]); ```
#28512020年6月22日作者 pooriamo3 个回答
嗨 当我选择一个方块并尝试更改样式时,什么都没发生。(我用的是网页预设)  这是我的配置:
VojtechLanka
我也遇到过同样的问题,在自定义设备上加了'widthMedia:''就解决了。我觉得在媒体查询中使用毫米时存在某种问题,导致样式不应用,因为它认为你的画布太大了。
pooriamo
看起来自定义设备大小出了问题。当我把默认大小设为桌面时,它就能正常工作。
pooriamo
@VojtechLanka 谢谢你