2013-04-18 18 views
1

ngShowfalse으로 평가 되더라도 지시문 내에서 여전히 더티 검사를 수행한다는 것을 알고 있습니다. (이 $compile을해야하기 때문에) 다음 /이 내용을 제거 숨 깁니다, 또는 AngularJS - ngShow - DOM 구성을 수행합니까?

  • 는 비용없이 더러운 검사를 수행

    • DOMngShow 내부를 구성 :

      그래서 ngShow (같은 ng-show=false가) 수행 DOM 요소를 만드는 중입니까?

  • 답변

    1

    ng-show은 요소를 display: none으로 설정합니다. 그래서 그들은 여전히 ​​DOM에있을 것이고 여전히 각도로 더러워 질 것입니다.

    실제로 DOM에서 요소를 제거하려면 ng-switch과 같은 것을 사용해보십시오. http://docs.angularjs.org/api/ng.directive:ngSwitch

    0

    Angular.js는 컴파일하는 동안 DOM 노드를 만들지 않습니다. 브라우저가 DOM을 작성한 다음 간단하게 지시문을 수집 할 수 있습니다.

    그래서 노드가 템플릿에 있으면 실제로 생성되지만 브라우저에서는 각도가 아닙니다.

    관련 문제