JointJS中元素如何访问position、inPorts、outPorts?

In JointJS, how an element accesses position, inPorts, outPorts?

我正在为我的学术项目使用 jointJS,我有这样一个问题,元素如何访问位置、inPorts、outPorts? 比如我们创建这样一个元素,

var m1 = new joint.shapes.devs.Model({
position: { x: 50, y: 50 },
size: { width: 90, height: 90 },
inPorts: ['in1','in2'],
outPorts: ['out'],
attrs: {
    '.label': { text: 'Model', 'ref-x': .4, 'ref-y': .2 },
    rect: { fill: '#2ECC71' },
    '.inPorts circle': { fill: '#16A085' },
    '.outPorts circle': { fill: '#E74C3C' }
}
});
graph.addCell(m1);

我想从m1得到positioninPorts,我试过了m1( 'position' )m1.position() , 但没有用。

有人可以解决这个问题吗?提前谢谢你。

您可以使用 m1.get('position')m1.get('inPorts')。您也可以使用 m1.prop('position')m1.prop('inPorts')。不同之处在于 get(property) 仅用于访问平面属性,而 prop(path) 也能够获取嵌套属性(例如 m1.prop('attrs/rect/fill').