Commit 236cc6f5 authored by StyleZhang's avatar StyleZhang

hooks

parent a311f88c
...@@ -28,9 +28,9 @@ export const useWorkflow = () => { ...@@ -28,9 +28,9 @@ export const useWorkflow = () => {
setEdges, setEdges,
} = store.getState() } = store.getState()
const newNodes = produce(getNodes(), (draft) => { const newNodes = produce(getNodes(), (draft) => {
const currentNode = draft.find(n => n.id === node.id) const currentNode = draft.find(n => n.id === node.id)!
if (currentNode)
currentNode.data = { ...currentNode.data, hovering: true } currentNode.data.hovering = true
}) })
setNodes(newNodes) setNodes(newNodes)
const newEdges = produce(edges, (draft) => { const newEdges = produce(edges, (draft) => {
...@@ -53,9 +53,9 @@ export const useWorkflow = () => { ...@@ -53,9 +53,9 @@ export const useWorkflow = () => {
setEdges, setEdges,
} = store.getState() } = store.getState()
const newNodes = produce(getNodes(), (draft) => { const newNodes = produce(getNodes(), (draft) => {
const currentNode = draft.find(n => n.id === node.id) const currentNode = draft.find(n => n.id === node.id)!
if (currentNode)
currentNode.data = { ...currentNode.data, hovering: false } currentNode.data.hovering = false
}) })
setNodes(newNodes) setNodes(newNodes)
const newEdges = produce(edges, (draft) => { const newEdges = produce(edges, (draft) => {
...@@ -105,7 +105,7 @@ export const useWorkflow = () => { ...@@ -105,7 +105,7 @@ export const useWorkflow = () => {
setSelectedNode(null) setSelectedNode(null)
const newNodes = produce(getNodes(), (draft) => { const newNodes = produce(getNodes(), (draft) => {
draft.forEach((item) => { draft.forEach((item) => {
item.data = { ...item.data, selected: false } item.data.selected = false
}) })
}) })
setNodes(newNodes) setNodes(newNodes)
...@@ -114,7 +114,10 @@ export const useWorkflow = () => { ...@@ -114,7 +114,10 @@ export const useWorkflow = () => {
setSelectedNode(selectNode) setSelectedNode(selectNode)
const newNodes = produce(getNodes(), (draft) => { const newNodes = produce(getNodes(), (draft) => {
draft.forEach((item) => { draft.forEach((item) => {
item.data = { ...item.data, selected: item.id === selectNode.id } if (item.id === selectNode.id)
item.data.selected = true
else
item.data.selected = false
}) })
}) })
setNodes(newNodes) setNodes(newNodes)
...@@ -126,9 +129,9 @@ export const useWorkflow = () => { ...@@ -126,9 +129,9 @@ export const useWorkflow = () => {
setNodes, setNodes,
} = store.getState() } = store.getState()
const newNodes = produce(getNodes(), (draft) => { const newNodes = produce(getNodes(), (draft) => {
const currentNode = draft.find(n => n.id === id) const currentNode = draft.find(n => n.id === id)!
if (currentNode)
currentNode.data = { ...currentNode.data, ...data } currentNode.data = { ...currentNode.data, ...data }
}) })
setNodes(newNodes) setNodes(newNodes)
setSelectedNode({ id, data }) setSelectedNode({ id, data })
......
...@@ -86,6 +86,7 @@ const Workflow: FC<WorkflowProps> = memo(({ ...@@ -86,6 +86,7 @@ const Workflow: FC<WorkflowProps> = memo(({
} = useWorkflow() } = useWorkflow()
useEffect(() => { useEffect(() => {
console.log(nodesInitialized, '2')
if (nodesInitialized && initialData.needUpdatePosition) if (nodesInitialized && initialData.needUpdatePosition)
handleInitialLayoutNodes() handleInitialLayoutNodes()
}, [nodesInitialized]) }, [nodesInitialized])
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment