저는 Pages를 활성화하고 PageNumber에 따라 테이블 (ng-repeats)을 표시하는 일종의 TabControl을 만들었습니다. 이 테이블은 자체 지시문 (직접 만든 격자 지시문)입니다.ngIf 어플리케이션이 느려집니다
이제 모든 페이지가 ngIf를 사용하고 PageNumber가 설정 될 때까지 렌더링되지 않지만 탭 페이지가 더 적은 경우 응용 프로그램이 더 많은 탭 페이지를 사용할 때보 다 빠릅니다.
나는 그것이 프로파일 러를 사용할 때 핵심 요소에 도달하지는 못했지만 컨텐츠를 컴파일하기 때문에 그렇다고 믿습니다. "compileNodes"가 많이 호출된다는 것을 알 수 있습니다.
누구나 같은 경험이 있습니까? 해결 방법에 대한 아이디어가 있습니까?
편집 : 무슨 또한 흥미로운 것은 , 즉 내가 (단일 페이지 응용 프로그램 내부 링크)를 tabcontroll에 가서 처음으로 더 빨리 그리고 다음 시간이 느리다. 마치 다른 콘텐츠로 이동했을 때 전체 탭 컨트롤이 삭제 되더라도 무언가가 기억 된 것처럼.
편집 2 : 나는 아직도 그것을 알아 내려고하고있다. ngRepeat로 할 수있는 또 다른 TabControl 내에서 TabControl을 보여주고 있기 때문에 ngRepeat 일 수도 있습니다. 흥미롭게도 충분히 : 처음으로 내 페이지를 방문하면 속도가 빠릅니다. 그런 다음 다른 페이지를 클릭하면 돌아올 때 속도가 느립니다! ngRepeat가 캐시에 일부 항목을 유지합니까 ?? Browser-Profile은 jQuery의 data_user -> cache에 free'd가 아닌 몇 가지 항목이 있음을 알립니다. (클릭 수당 9MB의 데이터까지 Chrome에서!)
preformance 카운터에 batarang을 사용해 보셨습니까? https://chrome.google.com/webstore/detail/angularjs-batarang/ighdmehidhipcmcojjgiloacoafjmpfk –
DOM에로드 된 모든 단일 페이지가 있고 'ng-if's로 제거 되었습니까? – user2943490
@Alex Choroshin : 예 Batarang을 사용했습니다. 그러나 이동 바인딩 등이있는 다른 페이지보다 왜 시간이 오래 걸리는지 알 수는 없습니다. – NoRyb