Go.js复制粘贴不起作用

时间:2016-01-07 11:51:22

标签: javascript gojs

我正在使用go.js库来绘制图表。 我想实现复制粘贴功能。我已经尝试过内置函数进行复制和粘贴。

这些方法的问题在于它们只从canvas中复制选定的节点。但我想复制所选节点的childNodes。

有人在这里寻求帮助吗?

1 个答案:

答案 0 :(得分:1)

首先,您了解CommandHandler.copiesTree属性吗?将此设置为true可能足以满足您的需要。 http://gojs.net/latest/api/symbols/CommandHandler.html#copiesTree

  Call Stack Trace:

  console.trace()
  (anonymous function) @ VM11965:1evaluate @ (program):493
  InjectedScript._evaluateOn @ VM11739:875
  InjectedScript._evaluateAndWrap @ VM11739:808InjectedScript.evaluateOnCallFrame @ VM11739:933
  Konva.Context.createPattern @ konva.js:1805Konva.SceneContext._fillPattern @ konva.js:1987
  Konva.SceneContext._fill @ konva.js:2045Konva.Context.fillStrokeShape @ konva.js:1635
  Konva.Line._sceneFunc @ konva.js:12613Konva.Util.addMethods.drawScene @ konva.js:7997
  (anonymous function) @ konva.js:7675Konva.Collection.each @ konva.js:664
  Konva.Util.addMethods._drawChildren @ konva.js:7674
  Konva.Util.addMethods.drawScene @ konva.js:7629
  Konva.Util.addMethods.drawScene @ konva.js:10363
  (anonymous function) @ konva.js:7675
  Konva.Collection.each @ konva.js:664
  Konva.Util.addMethods._drawChildren @ konva.js:7674
  Konva.Util.addMethods.drawScene @ konva.js:7629
  Konva.Util.addMethods.draw @ konva.js:3799
  Konva.Util.addMethods.draw @ konva.js:9337(anonymous function) @ DentalChartLib.js:132DentalChart.Pattern.getCustomPattern.nativeImageObject.onload @ DentalChartLib.js:617
  undefined

如果您正在使用TreeModel并希望将复制的子树添加到当前父级,CommandHandler.copiesParentKey可能也很有用。

其次,如果要以编程方式复制节点和链接,可以调用Node.findTreeParts和Diagram.copyParts。 http://gojs.net/latest/api/symbols/Node.html#findTreeParts http://gojs.net/latest/api/symbols/Diagram.html#copyParts

<强>参考 http://forum.nwoods.com/t/go-js-copy-paste-tree-not-work/6412/2