캔버스 요소를 사용하는 Ember 응용 프로그램이 있습니다. 나는 다음과 같은 모델을 사용하고 있습니다 :여러 모델이 Ember보기로로드 될 때까지 기다려주십시오.
키트 hasMany의에게 포지션 hasMany의 구성 요소 hasMany의 특징을
첫 키트 모델 데이터를로드지도 노선 개체 :
App.MapRoute = Ember.Route.extend({
model : function() {
return App.Kit.find(1);
},
setupController: function(controller, model){
this._super(controller, model);
}
});
이 경로의 캔버스 요소보기
<script type="text/x-handlebars" data-template-name="application">
{{outlet}}
</script>
<script type="text/x-handlebars" data-template-name="map">
{{view App.CanvasView }}
</script>
캔버스보기 :
App.CanvasView = Ember.View.extend({
tagName: 'canvas',
width: 600,
height: 600,
didInsertElement: function(){
var el = this.$();
// Pseudo Code
// When all kit, Position, Component and Feature Data is loaded
// Pass Data to createFabricCanvas
// this.createFabricCanvas(el, data);
},
createFabricCanvas: function(el, data){
fabCanvas = new fabCanvas(el, data);
}
});
내 문제는 내가 그것을 fabCanvas로 전달하기 전에로드되는 hasMany의 모델의 각각에 대한 모든 데이터를 확인 할 방법이다. FabCanvas 라이브러리는 미리 작성되고 처리하기 전에 모든 데이터를 사용할 수 있다고 가정합니다.
해결책은 .on ('didLoad')을 사용하여 각 모델의 존재 여부를 확인하는 것입니다.
감사합니다.