2017-09-08 28 views
1

我有一個KONVA組,其中有三個對象。我想顯示/隱藏該組的一個對象。如何隱藏KONVA組中的一個元素

const stage = new Konva.Stage({ 
    container: 'container', 
    width: window.innerWidth, 
    height: window.innerHeight 
}); 

const layer = new Konva.Layer(); 
stage.add(layer); 

const group = new Konva.Group(); 
layer.add(group); 

const circle1 = new Konva.Circle({ 
    x: stage.width()/2, 
    y: stage.height()/2, 
    radius: 50, 
    fill: 'green', 
    visible: true 
}); 

const circle2 = new Konva.Circle({ 
    x: stage.width()/2, 
    y: stage.height()/2, 
    radius: 30, 
    fill: 'red', 
    visible: true 
}); 

const circle3 = new Konva.Circle({ 
    x: stage.width()/2, 
    y: stage.height()/2, 
    radius: 10, 
    fill: 'blue', 
    visible: true 
}); 

group.add(circle1); 
group.add(circle2); 
group.add(circle3); 

layer.draw(); 

//group.hide(); // if I use this it will hide entire group but i want to hide only one object 
layer.draw(); 

我想只顯示/隱藏Konva組的circle2。誰能幫幫我嗎?

回答

2

只需調用circle2的隱藏方法即可。

circle2.hide(); 

此circle2通過引用添加到您的組中。所以如果你在circle2中做出任何改變,它會反映在group中。