addEdge()
This util is a convenience function to add a new Edge to an
array of edges. It also performs some validation to make sure you don’t add an
invalid edge or duplicate an existing one.
import { useCallback } from 'react';
import {
ReactFlow,
addEdge,
useNodesState,
useEdgesState,
} from '@xyflow/react';
export default function Flow() {
const [nodes, setNodes, onNodesChange] = useNodesState([]);
const [edges, setEdges, onEdgesChange] = useEdgesState([]);
const onConnect = useCallback(
(connection) => {
setEdges((oldEdges) => addEdge(connection, oldEdges));
},
[setEdges],
);
return <ReactFlow nodes={nodes} edges={edges} onConnect={onConnect} />;
}Signature
Parameters:| Name | Type | Default |
|---|---|---|
edgeParams | EdgeType | ConnectionEither an | |
edges | EdgeType[]The array of all current edges. |
Notes
- If an edge with the same
targetandsourcealready exists (and the sametargetHandleandsourceHandleif those are set), then this util won’t add a new edge even if theidproperty is different.
Last updated on