Диаграмма зависает после того, как проверка ссылок возвращает false в диаграмме GOJS - PullRequest
0 голосов
/ 20 февраля 2019

Я использую GoJS для создания диаграмм и использую версию 1.8.33, и я хочу применить проверки при рисовании связей между узлами.поэтому я использовал

this.diagram.toolManager.linkingTool.linkValidation = isDrawLink;
isDrawLink(fromnode, fromport, tonode, toport) {
return fromnode.data.name!==tonode.data.name
}

, но когда эта функция возвращает false, моя диаграмма зависает, я ничего не могу сделать на своей диаграмме.

1 Ответ

0 голосов
/ 20 февраля 2019

Я только что попробовал этот код, который включает в себя функцию проверки вашей ссылки:

  function init() {
    var $ = go.GraphObject.make;

    myDiagram =
      $(go.Diagram, "myDiagramDiv",
          {
            "linkingTool.linkValidation": function(fromnode, fromport, tonode, toport) {
              return fromnode.data.name !== tonode.data.name;
            }
          });

    myDiagram.nodeTemplate =
       $(go.Node, "Auto",
         $(go.Shape,
           { fill: "white", portId: "", fromLinkable: true, toLinkable: true, cursor: "pointer" },
           new go.Binding("fill", "color")),
         $(go.TextBlock,
           { margin: 8 },
           new go.Binding("text"))
       );

    myDiagram.model = new go.GraphLinksModel(
      [
        { key: 1, text: "Alpha", color: "lightblue", name: "A" },
        { key: 2, text: "Beta", color: "orange", name: "E" },
        { key: 3, text: "Gamma", color: "lightgreen", name: "A" },
        { key: 4, text: "Delta", color: "pink", name: "E" }
      ]);
  }

Я не смог воспроизвести любую проблему.Я пробовал и 1.8.33 и 2.0.3.

...