본문 바로가기
카테고리 없음

AngularJS 기초 - 03

by ByteBridge 2016. 2. 23.
반응형
Scope 이해하기 : 
     (출처: 자바스크립트 이해와 AngularJS활용)

     $scope(rootScope):
     Angularjs 가 실행되는 과정에는 컴파일 작업과 링킹 작업이 있다
     링킹 작업시에 만들어진 데이터를 보관하는 scope 라는 객체가 만들어 진다.
     일반적으로 하나의 페이지가 모듈을 사용하려면 하나의 $scope 객체가 생성되어서 유지 된다.
     모듈 선언에 맞게 생성되는 scope 를 rootScope 라고 한다.
     rootScope 는 하나의 전역 객체와 유사하게 동작한다.
     rootScope 에 선언된 변수는 모듈내의 어느곳에서든 접근 가능하다.

Scope 와 Controller:

     View <—— $scope —> Controller

controller 는 로직의 처리를 담당한다.
scope 는 controller 와 view 사이의 데이터 처리를 담당한다. 즉 다리와 같은 역할을 한다.
     scope 는 또한 데이터의 범위를 지정하는 용도로서도 사용된다.
AngularJS 로 만든 어플리케이션은 Controller 에 의해 제어 된다?( 제어된다.???)

Controller 정의:
     ng-controller=“myController"
     myController 는 함수가 된다.(자바스크립트 함수와 같음)
뷰에서 Controller-as 문법:
controller = "dreamController as dream" 
위 처럼 선언하면 해당 뷰에서 dream이라는 키워드를 통해 컨트롤러에 접근 할 수있게 된다.
ex; {{examProperty}}와 같은 것을 {{dream.examProperty}} 와 같이 사용 가능하다.

Angular에서 컨트롤러를 정의 한다는 것은 뷰에서 필요한 이벤트를 처리하거나, scope 를 통해서 데이터를 주고 받기 위해서이다.
컨트롤러는 뷰쪽에 더 가까운 존재이다.
컨트롤러를 설계하는 경우 scope 를 주입받아 사용하도록 설계 한다.
컨트롤러는 external 방식으로도 사용가능하다.즉 자바스크립트에서 외부 파일 불러오듯이 사용 가능하다.

      


반응형