2015-06-15 27 views
2

我具有從一個ng-view元件繼承了一個角視圖。角和CreateJS沒有找到級元件

在視圖文件,我有一個畫布。代碼由控制器控制。我想要做的是調用一個階段在畫布上添加元素。

但是,當我運行createJS.Stage函數時,會創建一個階段,其中包含所有內容,如null並且沒有界限。

我猜的元素沒有得到必然的階段,但我想不出爲什麼

的index.html

<ng-view  style='height: 100%;'></ng-view> 

template.html

<div class='middle' style="min-height:90%;height:90%"> 
<div class='col-lg-8'> 
<canvas id="demoCanvas" class='col-lg-11' style='margin-top:10px'></canvas> 
</div> 
</div> 

JS

app.controller('taskController',function($scope,$location,$routeParams,dataFactory){ 
    var stage = new createjs.Stage("demoCanvas"); 
    console.log(stage.getBounds()); 
    //bounds turn up as null as well as style and any other function that I run 
} 

回答

1

所以原來的問題是,當一個AngularJS控制器運行

訣竅運行一次的DOM完成加載的DOM沒有完全加載是

app.controller('taskController',function($scope,$location,$routeParams,dataFactory){ 
    $timeout(function(){ 
     visualInspectionHandler(); 
    }); 
    function visualInspectionHandler(){ 
      var stage = new createjs.Stage("demoCanvas"); 
      console.log(stage.getBounds()); 
    } 
} 
+1

如果可以的話訪問畫布爲創建的HTML DOM片段的一部分,可以隨時傳遞作爲參考,而不是ID(其簡單地使用在EaselJS一個'document.getElementById'查找)。這是我們通常採用Backbone應用程序的方法:'new createjs.Stage(this。$(「。demoCanvas」)。get(0))'; – Lanny

+0

@Lenny謝謝你的工作 – cjds

相關問題