更改后获取 gojs 更新模型
get gojs updated model after change
我正在使用 go.js 编写测试应用程序。此应用程序允许用户动态添加节点、移动现有节点并将它们相互连接。
图的初始状态用这个模型描述:
var nodeDataArray = [
{ key: "a", operation: "concat" },
{ key: "b" },
{ key: "c" },
{ key: "d", loc: new go.Point(30, 50) }
];
var linkDataArray = [
{from: "a", to: "b", toPort: "A"}
];
现在我遇到了这个问题。当我用 myDiagram.model.toJson()
输出我的更新模型时,无论用户在此期间做了什么更改,我总是得到原始模型。有没有更好的方法输出图的当前状态?
谢谢
不,调用Model.toJson是获取模型当前状态的最佳方式。问题是模型数据如何反映您在图表中看到的内容。
如果用户添加或删除了任何节点或链接,您会在 toJson() 输出中看到。
如果 Node.location 上存在双向绑定并且用户移动了一些节点,则新位置将反映在模型数据中。
如果用户通过您应用中的某些代码以某种方式修改了节点的 "operation",这也应该反映在模型数据中,假设您的代码修改了数据而不是 GraphObject(s) ) 直接不使用双向绑定。
我正在使用 go.js 编写测试应用程序。此应用程序允许用户动态添加节点、移动现有节点并将它们相互连接。
图的初始状态用这个模型描述:
var nodeDataArray = [
{ key: "a", operation: "concat" },
{ key: "b" },
{ key: "c" },
{ key: "d", loc: new go.Point(30, 50) }
];
var linkDataArray = [
{from: "a", to: "b", toPort: "A"}
];
现在我遇到了这个问题。当我用 myDiagram.model.toJson()
输出我的更新模型时,无论用户在此期间做了什么更改,我总是得到原始模型。有没有更好的方法输出图的当前状态?
谢谢
不,调用Model.toJson是获取模型当前状态的最佳方式。问题是模型数据如何反映您在图表中看到的内容。
如果用户添加或删除了任何节点或链接,您会在 toJson() 输出中看到。
如果 Node.location 上存在双向绑定并且用户移动了一些节点,则新位置将反映在模型数据中。
如果用户通过您应用中的某些代码以某种方式修改了节点的 "operation",这也应该反映在模型数据中,假设您的代码修改了数据而不是 GraphObject(s) ) 直接不使用双向绑定。