각도 문서 토론의 맥락에서, "모델"이라는 용어는 엔티티 (예 : 값이 전화 배열 인 "전화기"라는 모델) 또는 응용 프로그램의 전체 데이터 모델 (모든 엔터티)을 나타내는 단일 객체에 적용될 수 있습니다.
각도에서 모델은 모든 데이터 일 수 있으며 각도의 범위 객체의 특성을 통해 모델을 얻을 수 있습니다. 속성의 이름은 모델의 식별자이며 값은 JavaScript 객체 (배열 및 원시 데이터 포함) 일 수 있습니다.
JavaScript가 모델이되기위한 유일한 조건은 객체가 각도 스코프에 의해 스코프 객체의 속성으로 참조되어야한다는 것입니다. 속성의 참조 관계는 명시 적으로 또는 암시 적으로 만들 수 있습니다.
다음과 같은 방식으로 스코프 속성을 명시 적으로 생성하고 JavaScript 객체를 연결하여 모델을 생성 할 수 있습니다.
JavaScript 코드에서 스코프 객체에 할당 된 속성이 직접 할당됩니다. 이것은 일반적으로 컨트롤러로 전송됩니다.
function myctrl ($ scope) {// myctrl의 범위에서 속성 'foo'를 만들고 초기 값 'bar'$ scope.foo = 'bar'; }템플릿의 각도 표현식 (http://www.cnblogs.com/lclao/archive/2012/09/16/2687162.html)에서 할당 연산자를 사용하십시오.
<button ng-click = "{{foos = 'ball'}}"> me </button>을 클릭하십시오
템플릿에서 nginit 지시문을 사용하십시오 (http://docs.angularjs.org/api/ng.directive:nginit) (예 : 실제 응용 프로그램에서는 권장되지 않음).
<body ng-init = "foo = 'bar'">
Angular는 다음 템플릿 구조에서 암시 적으로 모델을 생성합니다.
입력, 선택, TextArea 및 형식의 기타 양식 요소 :
<입력 ng-model = "query"value = "Fluffy Cloud">
위의 코드는 현재 범위에서 "쿼리"라는 모델을 생성하고 입력 값에 바인딩되며 "Fluffy Cloud"로 초기화됩니다.
ngrepeater에서 반복자를 선언하십시오
<p ng-repeat = "전화로 전화"> </p>
위의 코드는 각 전화 배열의 각 요소에 대한 자식 범위를 생성하고 해당 하위 자식 스코프에서 "전화"모델을 생성하여 배열에 해당 값을 할당합니다.
각도에서 다음 상황이 발생하면 JavaScript 객체는 더 이상 모델이 아닙니다.
각도가없는 경우 객체와 관련된 속성이 포함되어 있습니다.
물체와 관련된 속성을 포함하는 모든 각도 스코프는 오래되고 쓰레기 수집에 적합합니다.
아래 그림은 간단한 템플릿에서 간단한 데이터 모델의 암시 적 생성을 보여줍니다.
위의 것은 Angularjs가 모델 구성 요소를 이해하는 것에 대한 정보이며 나중에 계속 추가 할 것입니다. 이 사이트를 지원 해주셔서 감사합니다!