直接连接2个节点(无吸附行为)和修改边连接的节点(有吸附行为)时交互不一致
- Dominant language
- TypeScript
- Stars
- 11.7k
- Forks
- 1.4k
- PR merge metrics
- No merged PRs in 30d
Description
1. 直接从节点A连接到B,鼠标可以在节点B内任意移动;
2. 调整A -> C节点之间的边,改成A -> B,鼠标在节点B内移动的时候默认会被吸附到距离最近的锚点;
因为AdjustPoint.tsx中有如下代码,edgeModel.updateAfterAdjustStartAndEnd(params);产生了吸附交互
```javascript
// 如果一定的坐标能够找到目标节点,预结算当前节点与目标节点的路径进行展示
if (info && info.node && this.isAllowAdjust(info)) {
let params;
const { startPoint, endPoint, sourceNode, targetNode } = edgeModel;
if (type === AdjustType.SOURCE) {
params = {
startPoint: { x: info.anchor.x, y: info.anchor.y },
endPoint: { x: endPoint.x, y: endPoint.y },
sourceNode: info.node,
targetNode,
};
} else if (type === AdjustType.TARGET) {
params = {
startPoint: { x: startPoint.x, y: startPoint.y },
endPoint: { x: info.anchor.x, y: info.anchor.y },
sourceNode,
targetNode: info.node,
};
}
edgeModel.updateAfterAdjustStartAndEnd(params);
} else if (type === AdjustType.SOURCE) {
// 如果没有找到目标节点,更显起终点为当前坐标
edgeModel.updateStartPoint({ x, y });
} else if (type === AdjustType.TARGET) {
edgeModel.updateEndPoint({ x, y });
}
```
能否让以上2种连接边的方式的交互保持一致呢?或者提供参数来控制要不要开启吸附功能。
Contributor guide
Assessment
This issue has not been assessed yet.