길고 복잡한 인증 체인을 통해 사용자를 기록하는 Microsoft의 adal.js for angular을 사용하고 있습니다. 로그인 프로세스가 완료되면 adal은 사용자 정보를보기에 사용할 수있게하기 때문에 밀접한 관계가 있습니다. :각도 변수는보기에서만 사용할 수 있으며 컨트롤러에서는 사용할 수 없습니다.
<p>
{{userInfo.userName}}
</p>
그건 작동하지만 어떻게 작동하는지 모르겠습니다.
나는 구문을 사용하고 있으므로 컨트롤러에 $scope
을 사용하려면 특별히 삽입해야합니다. 그렇지 않으면 컨트롤러에 사용할 수 없습니다.
그리고 $scope
은 컨트롤러에 주입되지 않습니다.
컨트롤러에 $scope
이 삽입되지 않은 경우 뷰에서 어떻게 $scope
변수를 보유하게 되었습니까?
감사합니다.
EDITED FOR CLARITY. 나는 그 질문이 더 이해되기를 바란다.
'$ scope'가 컨트롤러에 채워지고 뷰에 표시됩니다. 컨트롤러에 데이터를 입력하기 위해'ng-model' 지시어를 사용해야합니다. EDIT : 링크를 제거했습니다. – Baruch
혼란 스럽습니다. 컨트롤러에는 항상 범위가 만들어집니다. 컨트롤러가 사용할지 여부는 중요하지 않습니다. 모든 각도 표현식은 항상 범위에서 평가됩니다. controllerAs를 사용하면 컨트롤러 자체가 선택한 이름으로 스코프에 저장됩니다. –
혼란 스러울 지 모르지만 컨트롤러에'$ scope '를 특별히 주입하면'$ scope.userInfo' 만 얻을 수 있습니다. 그렇지 않으면'$ scope is not defined '입니다. – crowhill