这与这个问题有关,但它是关于向节点添加自定义节点类型和属性(我已经成功地做到了),我希望在连接本身上添加自定义属性。
我尝试过覆盖这些方法,getProperties
但无济于事。以下是我目前(以及我认为最接近的)尝试:getPropertyModel
builder.connector
// .. adding different node types and their attributes
var builder = new Y.DiagramBuilder( {
availableFields: availableFields,
boundingBox: '#diagramContainer',
srcNode: '#diagramBuilder'
} );
builder.render();
var test = builder.connector.addAttr(
'testAttr',
{
value:'test',
validator: Y.Lang.isString,
readOnly: false,
lazyAdd: false
},
false
);
builder.connector.SERIALIZABLE_ATTRS.push('testAttr');
// just calling addAttr doesn't seem to work, so I also tried this..
test.getProperties = function() {
return [
{
attributeName: 'testAttr',
editor: new Y.TextCellEditor(),
name: 'Test Attr',
value: 'default value??'
}
]
};
查看源码,似乎还有一个STRINGS
属性可能也需要修改,但我只能找到获取字符串(getStrings
)的方法,没有修改它们的方法。我可以尝试直接修改它,但我不能 100% 确定它存在于哪个对象上(上面没有在 builder.connector 上设置)
提前致谢。