如何编辑和删除 react-sortable-tree 中的节点?
How can I edit and delete node in react-sortable-tree?
我必须使用 react-sortable-tree 拖放树视图。而且我还需要在我的树视图中进行 crud 操作。我已经在树视图上添加、编辑和删除我的 parent 节点。出乎意料的是,每当我拖动我的节点时我都会遇到一些问题,当时我的 first-child 将编辑并在之后正确更新,但无法使用删除功能,而且 nth-child 也无法正常添加,编辑和编辑删除节点。
问题是您正在使用旧的 setState 语法更新状态。像这样,
setState({ stateKey: stateValue });
但是新的 useState 挂钩不需要 stateKey。您可以通过调用 setState(stateValue)
.
来更新状态
所以,与其写这个,
settreeData({
treeData: removeNodeAtPath({
treeData: treeData,
path: path,
getNodeKey: ({ treeIndex: number, node: TreeNode }) => {
return number;
},
ignoreCollapsed: false
})
});
你应该写这个,
settreeData(
removeNodeAtPath({
treeData: treeData,
path: path,
getNodeKey: ({ treeIndex: number, node: TreeNode }) => {
return number;
},
ignoreCollapsed: false
})
);
这是工作 code link。
我必须使用 react-sortable-tree 拖放树视图。而且我还需要在我的树视图中进行 crud 操作。我已经在树视图上添加、编辑和删除我的 parent 节点。出乎意料的是,每当我拖动我的节点时我都会遇到一些问题,当时我的 first-child 将编辑并在之后正确更新,但无法使用删除功能,而且 nth-child 也无法正常添加,编辑和编辑删除节点。
问题是您正在使用旧的 setState 语法更新状态。像这样,
setState({ stateKey: stateValue });
但是新的 useState 挂钩不需要 stateKey。您可以通过调用 setState(stateValue)
.
所以,与其写这个,
settreeData({
treeData: removeNodeAtPath({
treeData: treeData,
path: path,
getNodeKey: ({ treeIndex: number, node: TreeNode }) => {
return number;
},
ignoreCollapsed: false
})
});
你应该写这个,
settreeData(
removeNodeAtPath({
treeData: treeData,
path: path,
getNodeKey: ({ treeIndex: number, node: TreeNode }) => {
return number;
},
ignoreCollapsed: false
})
);
这是工作 code link。