antvis/G6

自定义节点使用lasso-select #4571

jiechuan1221 posted onGitHub

问题描述

你好,请问在4.8中怎么为自定义节点配置lasso-select呢,在我重新写setState之后节点就我发使用lasso这个功能了

重现链接

none

重现步骤

G6.registerNode('uid-node', { draw: (cfg: ModelConfig, group: IGroup) => { const keyShape = group.addShape('circle', { attrs: { r: 12, stroke: '#f6f7fb', fill: defaultColor[(cfg.cluster as number) % 8], shadowColor: 'lightgrey', shadowBlur: 10, strokeOpacity: 0.1 }, isKeyShape: true, name: 'circle' }); return keyShape; }, setState(name, value, item: Item | undefined) { const group = (item as Item).getContainer(); const shape = group.get('children')[0]; // 顺序根据 draw 时确定 if (name === 'highlight') { if (value) { shape.attr('fill', highlightColor[item?.getModel().cluster as number]); shape.attr('cursor', 'pointer'); }else { shape.attr('fill', defaultColor[item?.getModel().cluster as number]); } } } });

预期行为

配置lasso- select之后所有节点都适用,自定义节点在重写setState之后就无法使用lasso了

平台

  • 操作系统: [macOS.]
  • 网页浏览器: [Google Chrome]
  • G6 版本: [4.8 ... ]

屏幕截图或视频(可选)

No response

补充说明(可选)

No response


你的 setState 中没有处理状态 name 是 selected 的情况

posted by Yanyan-Wang almost 2 years ago

<img width="277" alt="image" src="https://github.com/antvis/G6/assets/71835600/434eb68f-0c41-4311-9a85-7cee088ab4fc"> 可以问一下lasso之后掉线的情况嘛?

posted by jiechuan1221 almost 2 years ago

然后如果我想要hover不覆盖其他的状态,应该怎么做呢

posted by jiechuan1221 almost 2 years ago

你的 setState 中没有处理状态 name 是 selected 的情况

谢谢

posted by jiechuan1221 almost 2 years ago

<img width="1660" alt="image" src="https://github.com/antvis/G6/assets/71835600/51565e70-9c4a-4dc3-8d11-81ba7a038ccb"> 可以再问问,这个视口的问题嘛?有时候右键会报错有时候不会,是因为初始设置的宽高不是具体数值的原因么(问题有点多,希望大大有时间回我一下吧)

posted by jiechuan1221 almost 2 years ago

这个需要一个在线复现 demo 排查一下

posted by Yanyan-Wang almost 2 years ago

然后如果我想要hover不覆盖其他的状态,应该怎么做呢

hover 的监听里面判断下是否目标元素已经有其他状态,如果有的话就不要设置 hover 的状态?

posted by Yanyan-Wang almost 2 years ago

<img alt="image" width="1660" src="https://user-images.githubusercontent.com/71835600/243318441-51565e70-9c4a-4dc3-8d11-81ba7a038ccb.png"> 可以再问问,这个视口的问题嘛?有时候右键会报错有时候不会,是因为初始设置的宽高不是具体数值的原因么(问题有点多,希望大大有时间回我一下吧)

这个也需要在线复现 demo 看看

posted by Yanyan-Wang almost 2 years ago

这个需要一个在线复现 demo 排查一下

https://codesandbox.io/s/unruffled-bardeen-wcm4wk?file=/index.js <img width="302" alt="image" src="https://github.com/antvis/G6/assets/71835600/9bd9ee9f-b493-48b6-b1eb-28106a1ec074">

<img width="384" alt="image" src="https://github.com/antvis/G6/assets/71835600/307188aa-8a34-46d0-b5b0-9563ae325203"> 这个是我复现的一个demo,大大可以帮忙看一下掉线的原因吗

posted by jiechuan1221 almost 2 years ago

This issue has been closed because it has been outdate for a long time. Please open a new issue if you still need help.

这个 issue 已经被关闭,因为 它已经过期很久了。 如果你仍然需要帮助,请创建一个新的 issue。

posted by github-actions[bot] 10 months ago

Fund this Issue

$0.00
Funded

Pull requests