2014-04-15 1 views
3

Ember가 모든 컨트롤러 객체에 대해 가비지 컬렉션을 수행하는지 궁금합니다.Ember가 컨트롤러 인스턴스를 파괴하는시기는 언제입니까

AS.Router.map(function() { 

      this.resource('employee', function() { 
       this.route('basics'); 
       this.route('services'); 
       this.route('advanced'); 
      }); 

}); 

내가 기본 노선에서 서비스 경로로 이동하면, EmployeeBasicsController 파괴 점점되지 않은 것으로 나타났습니다 :처럼 나는 노선 구조를 가지고 있었다. 그것은 의도적으로 설계되었는지, 또는 수동으로 (파괴 동작을 사용하여) 수행해야하는지 확실하지 않습니다.

답변

2

기본적으로 Ember는 기본적으로 싱글 톤 인스턴스를 사용합니다.

+1

인스턴스를 적절하게 파괴하는 방법에 대한 제안 사항이 있습니까? ie8과 같은 느린 브라우저의 경우 앱에서 메모리 사용량을 제한하려고하기 때문에 물어 봅니다. –

+1

나는 IE8을 지원해야하는 것과 비슷한 상황에 처해 있습니다. 컨트롤러를 이미 사용할 수있게하거나 메모리를 위해 컨트롤러를 배치하여 성능을 향상 시킬지 여부를 결정하기 란 어렵습니다. 일반적으로 IE8은 메모리 문제보다 자바 스크립트를 한 번에 (제어 권한을 포기하지 않고) 실행하는 데 더 많은 문제가 있습니다. 컨트롤러를 이미 사용할 수있게되면 아마 상처를받는 것보다 더 많은 도움이 될 것입니다. 이제 당신이 쓰러 뜨리는 데이터에 따라 컨트롤러를 청소하는 것보다 로컬 데이터 모델을 지워서 더 많은 것을 얻을 수 있습니다. – Kingpin2k

+0

@DeewendraShrestha 컨트롤러에서'destroy()'를 호출 해 보았습니까? 그러면 다음 실행 루프에서 정리해야합니다. – spinlock

관련 문제