pref: reduce the times of useNodes reRender (#28682)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
7
web/app/components/workflow/store/workflow/use-nodes.ts
Normal file
7
web/app/components/workflow/store/workflow/use-nodes.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
import {
|
||||
useStore,
|
||||
} from '@/app/components/workflow/store'
|
||||
|
||||
const useWorkflowNodes = () => useStore(s => s.nodes)
|
||||
|
||||
export default useWorkflowNodes
|
||||
@@ -23,6 +23,8 @@ export type WorkflowDraftSliceShape = {
|
||||
setIsSyncingWorkflowDraft: (isSyncingWorkflowDraft: boolean) => void
|
||||
isWorkflowDataLoaded: boolean
|
||||
setIsWorkflowDataLoaded: (loaded: boolean) => void
|
||||
nodes: Node[]
|
||||
setNodes: (nodes: Node[]) => void
|
||||
}
|
||||
|
||||
export const createWorkflowDraftSlice: StateCreator<WorkflowDraftSliceShape> = set => ({
|
||||
@@ -37,4 +39,6 @@ export const createWorkflowDraftSlice: StateCreator<WorkflowDraftSliceShape> = s
|
||||
setIsSyncingWorkflowDraft: isSyncingWorkflowDraft => set(() => ({ isSyncingWorkflowDraft })),
|
||||
isWorkflowDataLoaded: false,
|
||||
setIsWorkflowDataLoaded: loaded => set(() => ({ isWorkflowDataLoaded: loaded })),
|
||||
nodes: [],
|
||||
setNodes: nodes => set(() => ({ nodes })),
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user