그것은 내부에 직접 상태를 저장하는 것이 좋습니다 아니다 $ rootScope.
왜?
각도 검사 (더티 검사)의 다이제스트주기 동안 rootScope는 응용 프로그램의 모든 범위 관찰자가 "안정적"인지 확인하기 때문에 변경 사항을 확인하기 위해 DOM 내부에 많은, 많은, 많은 루프가 있음을 확인합니다. 정말 ...
그러나, 당신이 뭔가 더 할 수 있고, 여러 솔루션이 무거운 :
솔루션 1 - 당신의 구성 요소/지침 나무는/당신의 국가 트리
를 사용하여 높은 순서 지침에 맞는 구성 요소 s는 상태를 보유하고 하위 구성 요소/지시문을 통해 데이터를 전달합니다. 이렇게하면 모든 것이 부모에서 관리되므로 아무 것도 저장하지 않아도되므로 상태 비 저장 구성 요소를 제공 할 수 있습니다. 구성 요소 트리가 상태 트리와 일치 할 때 아주 간단한 솔루션입니다.
해결 방법 2 - 당신의 구성 요소/지침 나무는 당신의 국가 트리
당신은 그들 내부에 직접적으로 어떤 종류의 정보를 저장하고 어디서나 당신이 필요로하는 상태를 재사용하는 각 서비스를 사용할 수에 맞게 나던. 정말 AngularJS와의 모든 서비스 (공장/제공/서비스) 이후이 솔루션처럼 싱글입니다하지 않습니다, 그것은 3 안티 패턴 ...
솔루션입니다 - 돌아 오는
돌아 오는이 제시되었다 (거의 사용 된) Reactjs 커뮤니티에 의해,하지만 그것은 React뿐입니다.
Angularjs, Angular 2 등에서 사용할 수 있습니다 ... 구성 요소 트리가 상태 트리에 맞지 않으면 모든 프론트 엔드 자바 스크립트 프로젝트/fw에서 잘 작동하는이 라이브러리를주의 깊게 살펴 보시기 바랍니다. .
ngRoute 모듈 대신 ui-router를 사용하십시오. 상태를 저장할 기능을 제공합니다.https://github.com/angular-ui/ui-router –
팁을 주셔서 감사합니다 ... 나는 ui-router –