在 Rapid 框架中。 Link 使用 fromJSON 方法重新创建时,元素无法指向端口
In Rappid framework. Link Element fails to point to the port when recreating with fromJSON method
我仅使用以下定义在模板区域中创建元素
joint.util.defaultsDeep({
type: 'app.RectangularModel',
attrs: {
root: {
magnet: false
}
},
ports: {
groups: {
'in': {
markup: [{
tagName: 'path',
selector: 'portBody',
attributes: {
'd': 'M0 -10 L-5 -10 Q-10 0 -5 10 L 0 10 Z'
}
}],
attrs: {
portBody: {
magnet: true,
fill: '#61549c',
strokeWidth: 0
},
portLabel: {
fontSize: 11,
fill: '#61549c',
fontWeight: 800
}
},
position: {
name: 'left'
},
label: {
position: {
name: 'left',
args: {
y: 0
}
}
}
},
'out': {
markup: [{
tagName: 'path',
selector: 'portBody',
attributes: {
'd': 'M0 -10 L5 -10 Q10 0 5 10 L 0 10 Z',
'fill': 'purple',
'stroke': 'purple'
}
}],
position: {
name: 'right'
},
attrs: {
portBody: {
magnet: true,
fill: '#61549c',
strokeWidth: 0
},
portLabel: {
fontSize: 11,
fill: '#61549c',
fontWeight: 800
}
},
label: {
position: {
name: 'right',
args: {
y: 0
}
}
}
}
}
}
}, joint.shapes.standard.Rectangle.prototype.defaults);
像往常一样在纸张区域完成绘图后(一切正常),我在工具栏中有一个保存按钮。该按钮的功能是将绘图数据保存到 API 服务器以供稍后加载。
我正在使用函数 graph.toJSON() 方法获取图形数据以保存在服务器上。但是当我尝试重现相同的图形 JSON 数据时,使用函数 graph.fromJSON
链接没有正确指向端口。
这是画的原图
这是使用graph.fromJSON
方法复制的图像
问题:
正如您在图像中看到的那样,当使用函数 graph.fromJSON
函数在图形中复制图形数据时,链接指向 0,0 位置,如果元素而不是绘制的端口元素。
已解决问题。在将论文附加到 DOM 之前,我正在添加图表数据。当我在创建论文并将其附加到 DOM.
后使用 graph.addCells
时,图表呈现良好
我仅使用以下定义在模板区域中创建元素
joint.util.defaultsDeep({
type: 'app.RectangularModel',
attrs: {
root: {
magnet: false
}
},
ports: {
groups: {
'in': {
markup: [{
tagName: 'path',
selector: 'portBody',
attributes: {
'd': 'M0 -10 L-5 -10 Q-10 0 -5 10 L 0 10 Z'
}
}],
attrs: {
portBody: {
magnet: true,
fill: '#61549c',
strokeWidth: 0
},
portLabel: {
fontSize: 11,
fill: '#61549c',
fontWeight: 800
}
},
position: {
name: 'left'
},
label: {
position: {
name: 'left',
args: {
y: 0
}
}
}
},
'out': {
markup: [{
tagName: 'path',
selector: 'portBody',
attributes: {
'd': 'M0 -10 L5 -10 Q10 0 5 10 L 0 10 Z',
'fill': 'purple',
'stroke': 'purple'
}
}],
position: {
name: 'right'
},
attrs: {
portBody: {
magnet: true,
fill: '#61549c',
strokeWidth: 0
},
portLabel: {
fontSize: 11,
fill: '#61549c',
fontWeight: 800
}
},
label: {
position: {
name: 'right',
args: {
y: 0
}
}
}
}
}
}
}, joint.shapes.standard.Rectangle.prototype.defaults);
像往常一样在纸张区域完成绘图后(一切正常),我在工具栏中有一个保存按钮。该按钮的功能是将绘图数据保存到 API 服务器以供稍后加载。
我正在使用函数 graph.toJSON() 方法获取图形数据以保存在服务器上。但是当我尝试重现相同的图形 JSON 数据时,使用函数 graph.fromJSON
链接没有正确指向端口。
这是画的原图
这是使用graph.fromJSON
方法复制的图像
问题:
正如您在图像中看到的那样,当使用函数 graph.fromJSON
函数在图形中复制图形数据时,链接指向 0,0 位置,如果元素而不是绘制的端口元素。
已解决问题。在将论文附加到 DOM 之前,我正在添加图表数据。当我在创建论文并将其附加到 DOM.
后使用graph.addCells
时,图表呈现良好