#31792020年12月10日作者 TheEightArms4 个回答
你好, 过去几周我一直在尝试将Grapes整合到我的VueJs项目中,但我收到了一个关于资产管理部门的问题。 这就是我简单的assetManager配置,不知为何它会加载我两周前上传的另一张图片,无论我怎么尝试都无法更新。 如果我用assetManager.add('URL'),它会说getAllVisible是另一个,但什么都没有显示。如果我在添加 assetManager.render() 后操作,我收到的 HTML 元素只显示之前的旧图片。 有什么建议吗? 谢谢你 丹尼尔
gixid192
@TheEightArms 你可以在 [init 函数](https://grapesjs.com/docs/getting-started.html#start-from-the-canvas)中将 storeManager 设置为 false
TheEightArms
我发现它会从保存的代码和数据库加载资产,有没有可能告诉 StoreManager 不要加载资源? 谢谢
artf
你也可以避免从端点(加载组件和样式的地方)返回资产
#31732020年12月8日作者 niveth094 个回答
你好@artf!我用 GrapesJS 创建了一个网页构建器。 我想在预览模式下移除眼部斜视按钮,改用返回按钮。怎么做?请帮帮我。
robsonsobral
>我建议用[extending](https://grapesjs.com/docs/modules/Commands.html#extending)原始的[预览](https://github.com/artf/grapesjs/blob/dev/src/commands/view/Preview.js)命令感谢你的回复@artf。有没有关于扩展现有命令的文档或示例代码? https://grapesjs.com/docs/modules/Commands.html#ex...
collindutter
@niveth09这里是扩展预览命令(不含眼睛按钮)的代码:
artf
我建议用[extending](https://grapesjs.com/docs/modules/Commands.html#extending)原始的[Preview](https://github.com/artf/grapesjs/blob/dev/src/commands/view/Preview.js)命令
#31692020年12月7日作者 mrobertshaw3 个回答
你好 我正在尝试实现一个编辑器,页面的某些部分可以编辑/删除等(比如混合页面,有些元素是动态的,有些则不是)。 我用data-gjs属性来阻止静态元素上的这种行为,效果很好,但我似乎无法禁用容器元素本身的drop? 也就是说,我用fromElement: true绑定了我的实例到页面的正体元素,而data-gjs-droppable设置为false,但我仍然可以将块拖到页面的任意位置? 我是不是漏掉了什么,还是这是设计本意? 非常感谢 马克
mrobertshaw
这非常有帮助。 感谢您如此迅速的回复,以及您那出色、巧妙且设计精良的产品,这对我们的产品帮助巨大。
artf
你好@mrobertshaw,主元素是作为编辑器容器,而不是包装器。 如果你需要编辑包装器的道具,必须使用这个选项: “''js Grapesjs.init({ ... domComponents: { 包装:{ 可掉落:false, ... } } }) ```
ClaudeCode
谢谢你举报,@mrobertshaw。 关于*的好问题。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something changed')); 组件生命周...
#31642020年11月30日作者 mcottret2 个回答
你好@artf! 前段时间你们合并了以下PRs:https://github.com/artf/grapesjs-plugin-ckeditor/pull/39https://github.com/artf/grapesjs/pull/2977 与[本问题]相关(https://github.com/artf/grapesjs/issues/2916)。 有没有可能把“grapesjs-plugin-ckeditor”改成版本,这样修复就能包含进去? 提前感谢大家! 最新版本有替代方案吗? [ ] 是的 [ x ] 不 这是否与某个问题有关? https://github.com/artf/grapesjs/issues/2916
ClaudeCode
谢谢你举报,@mcottret。 关于FEAT: 'grapesjs-plugin-ckeditor'版本的好问题。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.lo...
#31632020年11月28日作者 MarksEliel4 个回答
有没有适用于Grapesjs的GrapeDrop形状分隔插件? 有没有卖葡萄插件的网站?
MarksEliel
嗨,@MarksEliel 你拿到了吗? @Abhisheknanda1344463 哇,今天早上我收到了GitHub的通知,看到是你的链接,非常感谢,太棒了!恭喜你! 你想开发其他插件吗?
Abhisheknanda1344463
https://www.npmjs.com/package/grapesjs-shape-divider 供参考@artf
artf
没有。 无论如何,你只需要创建一个特性(作为道具),并在其变化后更新组件内容(例如用形状分隔器的SVG格式)
#31592020年11月26日作者 sathyanarayananaCES2 个回答
我使用的是最新的GrapesJS(v0.16.27)。根据问题修复(#2029),异常已被捕获并登录到控制台。 除了控制台日志之外,还有其他办法能让我们知道这些错误吗? 类似 asset:upload:error 的话,如果我们有 parse:error,用自定义方式处理错误会很有帮助。如果我们已经有办法处理这个问题,请告诉我。
artf
通常,错误不来自解析器,而是来自DOM的创建(例如编辑器通过“setAttribute”创建元素)。你可以通过监听日志事件来发现编辑的错误 “''js editor.on('log:error', (err) => console.log('编辑者错误', err)) ``` 例如,你可以输入逻辑(例如读取错误)并展示相应的响应
ClaudeCode
谢谢你举报,@sathyanarayananaCES。 [问题]的问题 除了控制台日志之外,有没有其他方法能获得解析器错误? 看起来是竞态条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例...
#31572020年11月25日作者 pranay22102 个回答
我想将脚本应用到rte元素,也就是select的html元素,选择一个select字段的值时,动态值应该会附加到另一个select字段上,但脚本在RTE中无法工作  rte.add('custom-childkey', { 图标:htmlForChild, 将“结果”绑定在“change”听众身上 事件:“变化”, 结果:(RTE,动作) => {}, 更改时重置选择 更新:(...
artf
也许是因为它是“Stringify”而不是“stringfy”......
ClaudeCode
谢谢你举报,@pranay2210。 关于*的建议真棒!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:”事件进行细致跟踪 构建一个插件,扩展...
#31542020年11月23日作者 phamhongphuc19992 个回答
我想看到代码处理事件隐藏或删除元素。我在哪里能找到它? <img width=“958” alt=“Capture” src=“https://user-images.githubusercontent.com/56115755/99949266-509d2480-2dad-11eb-8203-51432975b4d3.PNG”> 非常感谢!
artf
给你 https://github.com/artf/grapesjs/blob/d802eba08559a3e1c7830e937a78b0b2a417f2e4/src/navigator/view/ItemView.js#L12-L22
ClaudeCode
谢谢你举报,@phamhongphuc1999。 关于在打开图层管理器中点击眼睛图标时隐藏元素的问题非常好。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('s...
#31492020年11月21日作者 MarksEliel2 个回答
版本:最后 演示中没有出现这个bug,我认为是因为使用localstorage进行存储。 Grapesjs 在背景时正常工作,但当我插入背景图层时,所有内容都显示正确。 问题是当我重新加载编辑器时,它不会显示已创建的图层,但所有内容都正常显示,问题是无法再次编辑,因为图层不会出现。 更多详情请观看视频。 https://youtu.be/F_YRlJpONSM
artf
在演示中没有出现这个bug,我认为是因为使用localstorage来存储。 不,使用本地存储和远程存储没有区别,因为使用的 JSON 结构是相同的。 确实,我猜你是在回加载 HTML,而不是 JSON(正如这里 https://grapesjs.com/docs/modules/Storage.html#store-and-load-templates 解释的那样)
ClaudeCode
谢谢你举报,@MarksEliel。 重载编辑器中背景图层为空的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本原因 在...
#31462020年11月19日作者 fahadali14 个回答
启用RTE需要多次点击,我能用单击编辑文本吗? 我尝试过添加属性 contenteditable,但存储管理器无法识别文本更改,请帮帮我。
artf
你可以扩展文本组件视图,并用点击触发onActive,而不是dblclick。 https://github.com/artf/grapesjs/blob/d3256e621bb43a537213ffcd86b10dc0bd070c0b/src/dom_components/view/ComponentTextView.js#L7-L10
antoineando-zenchef
@vidhii16 @fahad157 我用这段代码让它成功了: <img width=“758” alt=“image” src=“https://github.com/user-attachments/assets/2f9418e8-66f4-43ef-a5ac-428ede52e8a9” />
fahad157
@artf我试过改成点击,但对我来说不行,请帮帮我。 