如何向现有Konva.Group()
对象添加新属性?
例如:
var myRoom = {
title: "living room",
group: new Konva.Group({
x: 0,
y: 0,
draggable: true
})
};
myRoom.group.setAttr("obj", myRoom);
myRoom.group.on('dblclick', function(evt) {
console.log('room obj', evt.target.getAttr("obj"));
});
属性“obj”是“未定义的!那么如何将其添加到Group obj并能够正确检索它呢?
答案 0 :(得分:1)
evt.target
是对dbclicked的形状的引用。
要获得对Group
个实例的引用,您可以使用this
:
myRoom.group.on('dblclick', function(evt) {
console.log(evt.target); // circle
console.log(this); // group
console.log('room obj', this.getAttr("obj"));
});
演示:https://jsfiddle.net/qsyw4bqm/
注意:在新版Konva
(0.11.0)中,您可以使用evt.currentTarget
作为参考。