简体   繁体   English

GoJS中如何动态添加Node数据和Link数据?

[英]How to add Node data and Link data dynamically in GoJS?

 myDiagram.model = new go.GraphLinksModel(
[

  { key: "Alpha", color: "lightblue" },
  { key: "Delta", color: "pink" }

],
[
  { from: "Alpha", to: "Alpha" },
  { from: "Delta", to: "Alpha" }
]);

I need to add more values dynamically, how should I do this?我需要动态添加更多值,我该怎么做?

Node data (source: GoJS docs, class Model ):节点数据(来源: GoJS 文档,模型类):

If you want to add or remove node data from the nodeDataArray, call the addNodeData or removeNodeData methods.如果要从 nodeDataArray 添加或删除节点数据,请调用addNodeDataremoveNodeData方法。

Link data (source: GoJS docs, class GraphLinksModel ):链接数据(来源: GoJS 文档,类 GraphLinksModel ):

If you want to add or remove link data from the linkDataArray, call the addLinkData or removeLinkData methods.如果要从 linkDataArray 添加或删除链接数据,请调用addLinkDataremoveLinkData方法。 If you want to modify the node a link connects to, call the setFromKeyForLinkData and/or setToKeyForLinkData methods.如果要修改链接连接到的节点,请调用setFromKeyForLinkData和/或setToKeyForLinkData方法。

An example of dynamically adding from an object list to a GraphLinksModel :从对象列表动态添加到GraphLinksModel的示例:

       var model = new go.GraphLinksModel();
        for(let id = 1; id < node_list.length; id++){
       model.addNodeData( { key: node_list[id].getNodeID(), color: "lightblue" } );
       model.addLinkData( { from: node_list[id].getPreviousNode(), to: node_list[id].getNodeID() } );
         }
       myDiagram.model = model;  
       console.log(model.nodeDataArray); //to see data

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM