편집 :이 답변은 이제 잘못되었습니다. 내가 올릴 때 주제에 대한 공식적인 지침은 없었지만 @Yaroslov의 (우수하고 정확한) 답변에서 설명했듯이 더 이상 그렇지 않습니다 .Codelizer가 경고하고 구성 요소 템플릿의 개인 변수에 대한 참조에서 AoT 컴파일이 실패합니다 . 즉, 개념적 수준에서는 여기의 모든 것이 유효하게 유지되므로 도움이 된 것처럼이 답변을 남겨 두겠습니다.
그렇습니다.
있다는 사실을 숙지 private
구성 요소 / 컨트롤러 / 템플릿 타이프 라이터가 모르는 각 구조 인 반면 다른 액세스 수식, 타이프 라이터 구조이며. 액세스 수정 가시성 제어 사이의 필드 만들기 : 클래스를 private
방지 다른 클래스 에 대한 액세스 권한을 필요로하지만, 템플릿 및 컨트롤러가 존재하는 것들 내에서 클래스.
그것은 기술적으로 사실이 아니지만 (클래스가 데코레이터 및 메타 데이터와 관련되는 방법을 이해하는 대신)이 방법으로 생각하면 도움이 될 수 있습니다 .IMHO (중요한 것)는 템플릿과 컨트롤러에 대한 생각에서 분리 된 것으로 이동하기 때문입니다. 엔티티를 컴포넌트 구성의 통합 된 부분으로 생각합니다. 이것은 ng2 정신 모델의 주요 측면 중 하나입니다.
그런 식으로 생각 private
하면 컴포넌트 클래스의 변수가 템플릿에 표시 될 것으로 예상됩니다. 같은 이유로 private
해당 클래스 의 메소드에 변수가 표시 될 것으로 예상됩니다 .