feat(web): 尝试优化流程图性能

This commit is contained in:
2025-07-06 22:39:26 +08:00
parent 187c565da4
commit 03d0d9d85b
10 changed files with 110 additions and 44 deletions

View File

@@ -11,8 +11,9 @@ import {
import {filter, find, isEqual} from 'licia'
import {create} from 'zustand/react'
export const useFlowStore = create<{
export type FlowStoreState = {
nodes: Node[],
getNodes: () => Node[],
onNodesChange: OnNodesChange,
getNodeById: (id: string) => Node | undefined,
addNode: (node: Node) => void,
@@ -20,12 +21,16 @@ export const useFlowStore = create<{
setNodes: (nodes: Node[]) => void,
edges: Edge[],
getEdges: () => Edge[],
onEdgesChange: OnEdgesChange,
setEdges: (edges: Edge[]) => void,
onConnect: OnConnect,
}>((set, get) => ({
}
export const useFlowStore = create<FlowStoreState>((set, get) => ({
nodes: [],
getNodes: () => get().nodes,
onNodesChange: changes => {
set({
nodes: applyNodeChanges(changes, get().nodes),
@@ -41,6 +46,7 @@ export const useFlowStore = create<{
setNodes: nodes => set({nodes}),
edges: [],
getEdges: () => get().edges,
onEdgesChange: changes => {
set({
edges: applyEdgeChanges(changes, get().edges),