The "dagre" utility is a mandatory dependency

958 Views Asked by At

I am using jointjs and to auto layout the nodes I am using dagre library. my code break at this line

joint.layout.DirectedGraph.layout(self.graph, {
        setLinkVertices: false,
        rankDir: "LR",
        rankSep: 150,
        marginX: 100,
        marginY: 200,
        nodeSep: 80,
        edgeSep: 50
      }
      );

showing me Error: The the "dagre" utility is a mandatory dependency. I am using [email protected] and [email protected],

1

There are 1 best solutions below

1
On

I just ran into the same issue. The jointjs DirectedGraph plugin requires the dagre and graphlib packages.

To get around this I npm installed both dagre and graphlib.

So you would need to do this...

import dagre from 'dagre';
import graphlib from 'graphlib';
import * as joint from 'jointjs';

joint.layout.DirectedGraph.layout(self.graph, {
    dagre: dagre,
    graphlib: graphlib
    setLinkVertices: false,
    rankDir: "LR",
    rankSep: 150,
    marginX: 100,
    marginY: 200,
    nodeSep: 80,
    edgeSep: 50
  }
  );