fix: workflow sync (#3756)

This commit is contained in:
zxhlyh 2024-04-24 15:19:19 +08:00 committed by GitHub
parent 1ad70f8721
commit 731464f5b8
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -17,6 +17,7 @@ import ReactFlow, {
useEdgesState,
useNodesState,
useOnViewportChange,
useReactFlow,
} from 'reactflow'
import type { Viewport } from 'reactflow'
import 'reactflow/dist/style.css'
@ -71,6 +72,7 @@ const Workflow: FC<WorkflowProps> = memo(({
edges: originalEdges,
viewport,
}) => {
const reactflow = useReactFlow()
const [nodes, setNodes] = useNodesState(originalNodes)
const [edges, setEdges] = useEdgesState(originalEdges)
const showFeaturesPanel = useStore(state => state.showFeaturesPanel)
@ -91,6 +93,17 @@ const Workflow: FC<WorkflowProps> = memo(({
}
})
useEffect(() => {
setNodes(originalNodes)
}, [originalNodes, setNodes])
useEffect(() => {
setEdges(originalEdges)
}, [originalEdges, setEdges])
useEffect(() => {
if (viewport)
reactflow.setViewport(viewport)
}, [reactflow, viewport])
useEffect(() => {
setAutoFreeze(false)