我有一个包含多个物体的地图,如玩家,塔楼,敌人等。
使用此功能将它们添加到地图中:
const createCustomObject = (sides, radius, color, x, y) => {
let customObject = new Konva.RegularPolygon({
fill: color,
x: x,
y: y,
sides: sides,
radius: radius,
id: returnID()
});
customObject.on("click", e => console.log(e.target.id()));
addLayer(objectLayer, customObject);
};
现在我需要更改它,以便当用户点击任何customObject
时,上下文菜单应显示可点击的选项,如“删除”,“显示ID”等。
我怎么能这样做?我正在考虑创建一个Konva.Rect()
onclick并填充可点击的Konva.Text()
对象,但也许我还缺少其他方式?我的看起来很难看。
答案 0 :(得分:4)
这就是我所做的。我做了一个矩形,并将Konva.Text放在它上面。然后只为所有Konva.Text元素制作了onclick函数