2017-10-13 2 views
0

私はこのようなGraphLinksModelを定義している:カスタムlinkDataArray GoJs

$(go.GraphLinksModel, 
    { 
     archetypeNodeData: {}, 
     linkFromPortIdProperty: 'source', 
     linkFromKeyProperty: 'sourceColumn', 
     linkToPortIdProperty: 'destination', 
     linkToKeyProperty: 'destinationColumn', 
     'Changed': (e) => { 
     if (e.isTransactionFinished) { 
      console.log('Changed ' + this.diagram.model.toJson()); 
     } 
     }, 
     nodeDataArray: this.visualOrigins, 
     linkDataArray: this.relations 
    }); 

これは、出力を生成します。

"linkDataArray": [ 
    {"source":"Record1", "sourceColumn":"field1", "destination":"Record2", 
    "destinationColumn":"fieldA"} 
]} 

この出力を生成することが可能であるが、内部参照されているJavaScriptのオブジェクトとそれ?このように:

"linkDataArray": [ 
    {"source":"Record1", 
    "sourceObjectNode": {sourceObjectReferenced}, 
    "sourceColumn":"field1", 
    "sourceColumnObjectNode": {sourceColumnObjectNodeReferenced}, 
    "destination":"Record2", 
    "destinationObjectNode": {destinationObjectNodeReferenced}, 
    "destinationColumn":"fieldA", 
    "destinationColumnNode": {destinationColumnObjectNodeReferenced}} 
]} 

この目的は、処理を行わずにリンクされたノードを持つことです。事前に

おかげGoJSのフォーラムから

+0

もちろん、{sourceColumnObjectNodeReferenced}は整形式jsonになります。 –

答えて

0

回答:

https://forum.nwoods.com/t/insert-node-object-inside-linkdataarray/9395

「いいえ、それは有効なJSON形式のテキストではありません また、私はそれが理にかなっているとは思いません。ノード定義をリンクに入れます。それらは、リンクからのすべての参照によって共有できるように、Model.nodeDataArrayにある必要があります。

関連する問題