我对图表上的 fromJson 和 toJson 方法有一些问题。当我下载 json 时,各个端口上的自定义数据属性也存在于 json 文件中。但是当我尝试从下载的 json 上传它时,它完全重置并清除我的端口选项。有什么办法可以改变这种行为吗?
提前致谢, 本德
最佳答案
面临类似的问题。
就我而言,我正在扩展 devs.Model 形状。它是一种特定的形状,通过引入保存端口的 inPorts 和 outPorts 数组属性来简化当前的端口 API。 这些都不见了。
为了解决这个问题,您应该继承自例如basic.Generic 形状而不是 devs.Model。
我改变了
return joint.shapes.devs.Model.extend({
markup: [
].join(''),
defaults: joint.util.deepSupplement({
type: 'devs.GenericModel',
attrs: {},
ports: {},
}, joint.shapes.devs.Model.prototype.defaults)
});
至
return joint.shapes.basic.Generic.extend({
markup: [
].join(''),
defaults: joint.util.deepSupplement({
type: 'devs.GenericModel',
attrs: {},
ports: {},
}, joint.shapes.basic.Generic.prototype.defaults)
});
希望它能解决您的问题:)
关于JointJS 开发人员从 json 更新图表时端口数据消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46716563/