问题 #1617✓ 已解决提出于 2018年11月29日作者 coder-strange3 个反应

我怎样才能阻止block:drag:start事件的掉落?另外,有没有什么事件需要听,目标位置无效?

快速解答作者 artf3

问题1:我遇到的情况是,如果某个特定方块已经在画布里,我不能让它再次被添加。我现在做的是,我会list到block:drag:start,然后比较组件是否已经被丢弃(用gjs-components),到目前为止我成功了,但怎么防止那个拖拽事件? 我建议把这个逻辑转移到组件上。所以创建一个新的组件类型(例如“my-cmp”),并设置几个监听器: “''js editor.on('component:add', component => { 如果 (component.is('my-cmp'))) { 编辑。BlockManager.get('my-cmp-block') // 例如。藏好方块 // ... } }); editor....

阅读下方完整回答 ↓

问题

首先,非常感谢你对我问题的回复。感谢大家的帮助。

问题1:我遇到的情况是,如果某个特定方块已经在画布中,我不能让那个方块再次被添加。我现在做的是,我会list到block:drag:start,然后比较组件是否已经被丢弃(用gjs-components),到目前为止我成功了,但怎么防止那个拖拽事件?

问题2:当组件绑定到特定标签/组件时,当无效丢弃发生时,哪里可以监听?

回答(2)

👍 最有帮助artf2018年12月1日

问题1:我遇到的情况是,如果某个特定方块已经在画布里,我不能让它再次被添加。我现在做的是,我会list到block:drag:start,然后比较组件是否已经被丢弃(用gjs-components),到目前为止我成功了,但怎么防止那个拖拽事件? 我建议把这个逻辑转移到组件上。所以创建一个新的组件类型(例如“my-cmp”),并设置几个监听器: “''js editor.on('component:add', component => { 如果 (component.is('my-cmp'))) { 编辑。BlockManager.get('my-cmp-block') // 例如。藏好方块...

lock[bot]2019年12月1日

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

相关问答

通过相似的问题讨论继续研究。

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

相关教程

关于同一主题的深入指南。

全部教程 →

浏览插件分类

直接跳转到市场上的插件分类页面。