JointJS 开发人员从 json 更新图表时端口数据消失

标签 jointjs

我对图表上的 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/

相关文章:

javascript - JointJS:在scaleContentToFit之后如何获得新的比例因子?

javascript - jointjs元素鼠标点击事件

javascript - jointjs 纸张背景色

javascript - 如何防止 jointjs 中的元素接触/碰撞?

jointjs - rappid Joint js 是否能够在布局完好的情况下从 JSON 保存和重新加载图表

jointjs - 如何使纸张可拖动

css - 防止在 Joint JS 中拖拽

jointjs - 获取元素的传出链接

javascript - JointJS 通过单击选择元素

javascript - 在 JointJS 中,如何创建带有端口的用户定义元素