Skip to content

Commit d84070a

Browse files
authored
fix(node-more): target is invalid and will render incorrect status when target is collapsed node #WIK-19092 (#1122)
1 parent 3b7205f commit d84070a

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

packages/mind/src/plugins/with-node-more.ts

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import {
22
depthFirstRecursion,
3+
getElementById,
34
getIsRecursionFunc,
45
isSelectedElement,
56
PlaitBoard,
@@ -43,15 +44,18 @@ export const withNodeMore = (board: PlaitBoard) => {
4344
}
4445

4546
if (nodeMoreRef) {
46-
toggleHoveredNodeCallback({
47-
target: nodeMoreRef.target,
48-
isHovered: false,
49-
isHoveredCollapseArea: false,
50-
isHoveredExpandArea: false,
51-
isHoveredAddArea: false
52-
});
47+
const element = getElementById<MindElement>(board, nodeMoreRef.target.id);
48+
// maybe element has been changed
49+
if (element && element === nodeMoreRef.target) {
50+
toggleHoveredNodeCallback({
51+
target: nodeMoreRef.target,
52+
isHovered: false,
53+
isHoveredCollapseArea: false,
54+
isHoveredExpandArea: false,
55+
isHoveredAddArea: false
56+
});
57+
}
5358
}
54-
5559
if (newNodeMoreRef) {
5660
toggleHoveredNodeCallback(newNodeMoreRef);
5761
if (nodeMoreRef) {

0 commit comments

Comments
 (0)