#33662021年3月26日作者 kerryj894 个回答
我正在尝试扩展“预览”命令。 我本以为下面的代码会运行正常的预览命令和控制台输出,但实际上只有控制台语句能运行。 我怎样才能保留原始预览代码? 以下内容对我来说还算有效,直到有人能指出我哪里出了问题。
artf
如果你指定了一个新的“run()”函数,命令只会运行新的,否则就无法完全更改命令(这里更多内容是关于[扩展命令](https://grapesjs.com/docs/modules/Commands.html#extending))
ronaldohoch
你好,Artf,奇怪的是,我也需要和他一样的东西。 所以,最好的做法就是模仿他?在扩展预览中运行原始预览命令?
ronaldohoch
嗯...... 我还在做的另一件事是通过在事件上运行命令来扩展预览。 “''js editor.on(“run:preview”,()=>{console.log(“run-preview”)}); editor.on(“stop:preview”,()=>{console.log(“stop-preview”)}); ```
#33652021年3月26日作者 Franci5co5aoco4 个回答
你好@artf 我想知道为什么图层的名称范围会有一个“contenteditable”属性。 如果我没记错的话,grapesJs 上并没有实现任何机制,可以在刷新页面后真正更改图层名称。 这对用户来说可能会有点困惑。 '''html <div class=“gjs-layer-title-inn”> <i class=“gjs-layer-caret fa fa-chevron-right” data-toggle-open=“”></i> <span class=“gjs-layer-name gjs-no-app gjs-layer-name--no-edit” data-name=“ contenteditable=”tru...
artf
如果你双击图层名称,实际上可以更改它的名字:)
Franci5co5aoco
@artf,抱歉,我觉得我被误解了。 我的意思是你可以更改名称,但刷新页面时更改内容不会被保存......我认为并没有实施任何机制来实现这一点。 当用户修改图层名称时,他期望该修改会被保存,但事实并非如此。 这里有一段用官方GrapesJs演示的视频: 我把'Header'图层的名称改成了'Test',刷新页面时'Header'还是保留了图层的名称。这是预期中的行为吗? 如果有,为什么它有“内容编辑”属性? 非常感谢你的时间。 https://user-images.git...
artf
不,存储/加载自定义图层名称的机制是存在的,唯一的问题是更改没有触发存储......确实,如果你在更改后立即尝试移动某个组件,页面刷新后你会看到它们。 无论如何,这个问题应该会在即将推出的页面管理器模块中得到修复。
#33642021年3月25日作者 NagarRahul3 个回答
警告 请阅读并遵循接下来的三步,然后在发布问题前删除它们遵守贡献指南 https://github.com/artf/grapesjs/blob/master/CONTRIBUTING.md先快速搜索一下,看看有没有人没开同样的问题所有相关陈述/问题都必须填写/回答,否则问题可能已结案JSFiddle 入门模板 https://jsfiddle.net/szLp8h4nCodeSandbox 入门模板 https://codesandbox.io/s/1r0w2pk1vl 你想给GrapesJS添加什么? 详细描述你的功能需求详细 最新版本有替代方案吗?[ ] 是的(描述替代方案)[ ] 不 这是否与某个问题有关?[ ] 是的(请...
NagarRahul
@artf  我拖动按钮时,它就是消耗。我想修复它。拖动新按钮时不应该消耗。溢出后会滚动鞋卷。
artf
这主要取决于组件的样式(比如用Display Inline-Block来控制那个按钮可能会解决这个问题)
ClaudeCode
谢谢你举报,@NagarRahul。 关于FEAT:@How在容器内拖拽元素时,固定容器大小,容器会根据子拖拽元素被消耗。我们如何根据父容器自动调整子元素大小。容器不应根据子元素来消耗。应该是展示卷轴。!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector...
#33632021年3月24日作者 nairdapuiu2 个回答
我正在尝试用 set 函数来更改组件的内容,但实际上结果是一个空组件,内部什么都没有。 这是一个代码总结的示例 使用版本:0.16.44 预期的行为是什么? 执行的代码应生成一个包含文本“foo”的组件。 目前的行为是什么? 执行后的代码会清空组件内容。 在0.16.34版本中,一切正常运行。 这个问题有解决办法吗,还是我应该继续用0.16.34版本?
artf
你不应该使用“content”属性,应该用“selectedComponent.components(str)”。
ClaudeCode
谢谢你举报,@nairdapuiu。 关于Set content function清空组件内容,这个问题很棒。推荐的组件方法是使用事件驱动的API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('somethi...
#33622021年3月23日作者 qweiop8013 个回答
葡萄 - 0.16.105 当我点击一个元素(表单——该元素已禁用克隆)时,下一个元素(列)会被点击。第一元素克隆到第二元素,失去了所有风格。你能帮我吗? https://user-images.githubusercontent.com/44744754/112153667-cb534080-8be3-11eb-90ef-dbccc866fde2.mp4
artf
你好,首先你需要更新你的 Grapesjs 版本,它太旧了,没有可复现的问题演示我帮不了你
qweiop801
我把 Grapesjs 更新到 0.16.45,问题依旧存在
ClaudeCode
谢谢你举报,@qweiop801。 关于双击问题的好问题。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something changed'))...
#33592021年3月23日作者 qweiop8012 个回答
当我点击一个元素时,第二个元素,第一个元素会克隆到第二个元素,导致所有样式丢失。你能帮我吗? 
artf
你好@qweiop801请按照问题模板操作,按照所有步骤操作
ClaudeCode
谢谢你举报,@qweiop801。 双击复制错误的问题似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本原因 在报告中包含 G...
#33562021年3月22日作者 mitcht2 个回答
你想给GrapesJS添加什么? 每个版本的未压缩版本 详细描述你的功能需求详细 我正在使用一些更复杂的方法,使用组件管理器。 最后一个未压缩的“调试”版本是 0.15.xx。 能否同时发布未压缩版和压缩版,以便能进入代码? This请求来自我试图向同事解释addComponent功能的工作原理,但无法完整解释,于是我试图进入代码,却发现没有未压缩版本existed 最新版本有替代方案吗?[ ] 是的(描述替代方案)[X] 不 - 我想用最新版本,而不是旧版本来实现这个功能 这是否与某个问题有关?[ ] 是的(请提供本期链接)[X] 不
artf
你好@mitcht当前的捆绑包包含了压缩文件,同时也包含了源码映射,所以你可以很容易地通过开发工具查看原始代码(更多内容见这里,[https://developers.google.com/web/tools/chrome-devtools/javascript/source-maps)]),因此如果你需要调试代码,没有必要同时包含未压缩版本。 你的情况呢?我觉得直接展示源代码(在Github上)更有信息量。
ClaudeCode
谢谢你举报,@mitcht。 最新版本中FEAT:未压缩版本的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本原因 在报...
#33552021年3月22日作者 Franci5co5aoco3 个回答
你好@artf, 当我在图层面板中嵌套多个元素时,由于图层面板宽度不够大,有些元素名称会被截断,我知道自定义可调整大小面板可以解决,但大多数用例中添加标题属性就足够了。  一个提示(标题)对用户会很有帮助。 葡萄糖/src/导航员/视图/ItemView.js 也许在跟随行添加标题属性能解决问题吗? https://github.com/artf/grapesjs/blob/7a...
artf
是啊,为什么不呢......你想创建一个永久纪录吗?:)
Franci5co5aoco
@artf当然,谢谢! 我要做公关......
ClaudeCode
谢谢你举报,@Franci5co5aoco。 关于FEAT:在图层面板元素中添加标题属性,这是个很好的问题。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('s...
#33542021年3月22日作者 ThetripGr2 个回答
版本: 0.16.44 预期的行为是什么? 我预计在同一页里能有两个不同的葡萄实例,并且能够正确使用资产管理 详细描述那个漏洞* 我在一个页面上初始化了两个 Grape 实例,配置如下 “JavaScript AR editor = Grapesjs.init({ fromElement: 1, container:“#{{varName}}”, 插件:[...], styleManager:错误, noticeOnUnload: false, storageManager: false, 面板:{...}, 资产管理人:{ 上传: '/api/handleEditorUpload', 上传名称:“files”, }, ``` 实...
ThetripGr
好吧,经过一番调查,真正的问题是我发起编辑的方式,所以是我的错。我没有确保实例真正分开,结果覆盖了第一个实例,尽管它看起来正常且没有错误。我关闭这个问题,因为它不是真正的bug报告。
ClaudeCode
谢谢你举报,@ThetripGr。 有两个葡萄实例存在,使得资产管理者在第一个“停止”时工作,似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助...
#33532021年3月19日作者 jcsofts2 个回答
感谢你的工作,这是个不错的项目,可能不是个bug。 我尝试让样式管理器中的色彩选择器滚动,输入框也一样。 例如: (颜色,背景)输入框打开选色器滚动样式管理器 输入框移动了,但颜色选择器仍停留在原来的位置 我在 Grapesjs 演示网站上试过这个 <img width=“506” alt=“WeChat944c23a71851577e18470c0dec31441e” src=“https://user-images.githubusercontent.com/33087222/111763958-a73ee900-88dd-11eb-9751-b6012039d577.png”> <img width=“510” alt=“W...
artf
颜色选择器绝对地放置。除非你能找到方法在样式管理器的滚动页面上更新,否则我看不到其他办法。
ClaudeCode
谢谢你举报,@jcsofts。 关于颜色选择器从输入框滚动的问题非常好。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something cha...