Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/415.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Easil js-从容器中移除项目-不是阶段_Javascript_Createjs - Fatal编程技术网

Javascript Easil js-从容器中移除项目-不是阶段

Javascript Easil js-从容器中移除项目-不是阶段,javascript,createjs,Javascript,Createjs,我正在构建一个绘图应用程序——小时候,涂鸦被绑定到一个容器(而不是舞台)上 但问题是——当我试图撤销涂鸦时——什么也没发生。我尝试从容器中删除子容器-但什么都没有发生-如果我开始尝试更新缓存或更新阶段-什么都没有发生。-更新容器上的缓存似乎可以清除所有内容 this.stage = new createjs.Stage('canvas'); this.stageArea = new createjs.Container(); this.stage.addChild(this.stageAr

我正在构建一个绘图应用程序——小时候,涂鸦被绑定到一个容器(而不是舞台)上

但问题是——当我试图撤销涂鸦时——什么也没发生。我尝试从容器中删除子容器-但什么都没有发生-如果我开始尝试更新缓存或更新阶段-什么都没有发生。-更新容器上的缓存似乎可以清除所有内容

this.stage = new createjs.Stage('canvas'); 

this.stageArea  = new createjs.Container();
this.stage.addChild(this.stageArea);

var drawingCanvas = new createjs.Shape();
drawingCanvas.shadow = new createjs.Shadow('#0066cc',1, 1, 30);

app.stageArea.addChild(drawingCanvas);    

function undoHandler = function(){
    console.log("undo bit");
    if(app.stageArea.children.length > 1){
        var lastChild = app.stageArea.children.pop(1);
        app.stageArea.removeChild(lastChild);
        app.stage.update();
    }
}        

这个想法在这个概念中起作用-我不明白为什么在我正在处理的代码库中-这不起作用。什么会阻止从容器中删除绘制画布形状的子对象?我建议不要从子对象列表中手动删除子对象,除非您需要执行容器API不支持的操作。在这种情况下,
removeChild()
将为您将其从子列表中删除。您还可以使用
container.numChildren
而不是访问子数组来获取长度。