#29722020年8月25日作者 kuhelbeher3 个回答
你好,首先感谢你提供这么棒的工具。 在我的项目中,我遇到了一个需要在编辑器里禁用脚本的问题。我发现这个问题有两个类似的问题——https://github.com/artf/grapesjs/issues/2046 https://github.com/artf/grapesjs/issues/2814。所以这个问题很常见,也许把这个功能加到下一个版本会更好? https://github.com/artf/grapesjs/issues/2046 期中@sdrebel提到他正在移除Canvas中的脚本,只在预览模式下运行。有人能提示我怎么做吗?我没找到如何移除和设置模板的 js 的方法。
RJCAM
你好@kuhelbeher我也还在努力实现这个目标,但这里有个建议可以帮助我们实现。 如果我找到办法,我会在这里发帖。 参见本期 #2772
kuhelbeher
@RJCAM谢谢你的建议,我试过了,但这种方法的问题是它禁用的是组件脚本,而不是整个模板。
artf
一旦编辑器及其组件加载完成,就很难考虑禁用 JS,可以考虑用自定义脚本绑定事件的组件(甚至用外部插件)。 唯一可能的方法是在更新某个配置标志(例如通过“Canvas.enableScripts(false)”)后,重新加载整个帧(当前组件状态),并阻止它们附加[这里](https://github.com/artf/grapesjs/blob/29abac0d77e2dda681dce10be3d7fa92b80fd5bb/src/canvas/view/CanvasVie...
#29132020年7月23日作者 neon123452 个回答
“JSON.stringify(editor.getComponents())”的输出显示,一个图像的src被存储了两次。 { “类型”: “图像” “虚无”:真, “状态”:“已选中”, “内容”:“, “属性”:{ “id”: “iy3c7”, “SRC”:“Data:Image/PNG;base64,...“ <--- 1. }, “SRC”:“Data:Image/PNG;base64,...“,<--- 2。 “activeOnRender”: 0, “Open”:错误 } 版本是v0.16.18——通过演示验证。
artf
@longdoan7421我认为我们可以用“toJSON”方法删除它,当“src”等于“attribute.src”时,并确保加载时正确加载
longdoan7421
你好,@artf, 我刚刚快速浏览了一下“ComponentImage”。我认为可以去掉图像模型中的“src”属性,把“ComponentImage”和“ComponentImageView”中使用“src”的代码替换成“attribute.src”。 但我不确定你在其他地方是否使用“src”属性?你怎么看?
#28782020年7月6日作者 fedulovivan3 个回答
步骤:https://grapesjs.com/demo-newsletter-editor.html 开放通讯演示清洁画布删除“文本部分”选择H1内的任何单词,例如单词“title”按粗体修饰键一两次 预期:所选文本变为非粗体 实际情况:文字保持粗体 以上步骤是针对CKE编辑器,现在已在通讯演示中启用。 内置编辑器的行为则有些不同: 在编辑激活期间,所选单词的样式会变为非加粗。生成的HTML也包含正确的样式。但 Canvas 在编辑完 H1 后又会显示为加粗。 请看演示:  ``` 我认为解决方案就是在 URL 或 base64 代码...
meyerco
你好@artf, #2975 这里有一个修复问题的PR。 如果足够好,请告诉我。 谢谢
artf
感谢你的报告,我很希望能为这个问题写个公关
meyerco
你能指引我去一个文件,background-image 设置在那里吗?
#28282020年6月12日作者 kuhelbeher3 个回答
链接和CKEditor存在问题。我启用了标签的可编辑属性<a>: “JavaScript CKEDITOR.dtd.$editable.a = 1; ``` 当我双击链接时,它可以编辑,一切正常。但当我完成编辑并再次尝试编辑时,我却做不到。  你能帮忙吗?
kuhelbeher
@artf 就是这样:https://codesandbox.io/s/link-ckeditor-8md7v?file=/src/index.js
artf
我看到内容编辑内容仍然是“虚假”的,这也是bug的原因,但我不确定原因是什么。也有可能是CKEditor阻止了传播。 如果有人愿意帮忙,我会非常感激。
#28242020年6月11日作者 tonypartridge3 个回答
所以当我把组件/物品从条子拖到中心时,它不会去我指定的位置......它总是偏向一侧大约20%的页面宽度?加装后可以调节。看看这个动图: https://gyazo.com/87076de55a1853e80b5dd7ea14ccb94e 有人有什么建议吗?
RJCAM
嗨@tonypartridge 你有最后一个GrapesJS版本吗? 用“dragMode: ”absolute“这个功能对我来说运行得很好, 请查看下面的基本代码:
artf
是的......实际上,当启用更小的设备视图时,我也能重现同样的问题,可能是某种回归。我需要时间调查,但目前我有点忙于其他事情,拖拽模式不是我的优先事项。所以,我希望有人能看看这个
soltanloo
我用绝对拖拽模式时也有同样的问题。积木总是从画布里掉出来,我需要滚动才能抓取并放回原来想要的位置。 @tonypartridge 你找到解决办法了吗?
#27742020年5月14日作者 vinceumo1 个回答
你好, 我在移动优先的方式上遇到了一些问题。当画布在多个断点设置不同样式时,渲染出错误的样式。但生成的代码是好的,这个问题只发生在画布里。 https://codesandbox.io/s/xenodochial-shockley-s02lp?file=/index.js:496-524 “''js const 断点 = [ { 名称:“xs”,宽度:“320px” }, { 名称:“xsLg”,宽度:“400px” }, { 名称:“sm”,宽度:“630px” }, { 名称:“MD”,宽度:“740px” }, { 名称:“LG”,宽度:“1024px” }, { 名称:“XL”,宽度:“1280px” }, { 名称:“X...
artf
我们也应该用 https://github.com/artf/grapesjs/blob/201e1f9a61783080f7be885e9e0be9a40ecc16cc/src/codemanager/model/CssGenerator.js#L151-L162 的逻辑 给你 https://github.com/artf/grapesjs/blob/201e1f9a61783080f7be885e9e0be9a40ecc16cc/src/csscomposer/vie...
#27712020年5月13日作者 antman33513 个回答
你好, 我刚刚更新到最新版本 0.16.12,尝试将带有 'textable:1' 属性的组件迁移到文本组件时遇到了 bug。 它在之前的版本 0.16.3 上运行。 当我移动组件时,控制台会报错 '未捕获类型错误:无法读取未定义属性'属性' - ComponentView.js:293' 我举了一个基本例子:https://codepen.io/antman3351/pen/pojZWLe 谢谢!
artf
我这里留下一个可文本组件的工作示例 https://jsfiddle.net/artur_arseniev/0b9ox72g/
0099FF
看起来是在9c24108dadf2ded39e8805b6c4a5f00c626c468b中首次出现的。 正如@antman3351指出的,'model.getView().render();' 调用是麻烦制造者。在调用栈的稍后端,我们尝试更新视图的属性,但当我们尝试访问时,“model”属性是“未定义”(https://github.com/artf/grapesjs/blob/dev/src/domcomponents/view/ComponentView.js#L29...
bogdanbs
我对此有两点建议。 问题在于异步和同步代码的混淆。 启用 rte: enable(view, rte) 以及 ComponentTextView.onActive 和 ComponentTextView.disableEditing 自问题 #3475 修复后,现已成为异步方法。 在排序器类中,富文本编辑器是同步激活的(第1133行) “''activeTextModel.trigger('active');' 但当activeRte实例在第1140行被访问时,尚未完全初始...
#27692020年5月12日作者 cartifon1 个回答
@artf,有个问题,激活keyMap时核心命令应该触发吗? 情况是: 我补充了以下内容,听众们: 当我用删除图标删除组件时,它会调用我的监听器,但当我按下“删除”键时,监听器却不会被触发......我这样做有问题吗? 你可以在这里查看: https://www.w3schools.com/code/tryit.asp?filename=GEQBCR5CLYQF
artf
是的,你说得对,指令处理器在这里直接执行 https://github.com/artf/grapesjs/blob/fbfa812eaaeeb467337107896ee6decfbfbc028e/src/keymaps/index.js#L154 它应该通过“Commands.run(id, opts)”的 https://github.com/artf/grapesjs/blob/fbfa812eaaeeb467337107896ee6decfbfbc028e/src...
#27482020年4月30日作者 jsychova3 个回答
默认的StyleManager属性“滑块”无法处理非整数步长值。 GrapesJS 版本:0.16.1 在许多情况下,使用步长值非整数的滑块很方便:  看起来 Grapesjs 只支持整数,并且四舍五入非整数值。 繁殖步骤: 添加类型为“滑块”的属性
adamwpe
啊,你是说箭头——抱歉,我以为你是指滑块不起作用。  我之前没注意到——总是用滑块顺序,鼠标拖动时在箭头上。 我会去看看风景——不太确定从哪里开始,哈哈。
adamwpe
奇怪的是——这对我有效(我知道我同时创建了扇区): 你能做个演示吗?
jsychova
当然可以。 我用你的片段做了一个样本,但似乎它不愿意和我一起工作。 https://codepen.io/sjul66/pen/VwvMwNY 谢谢!