[javascript] 식에 대한 Angular lazy 일회성 바인딩

AngularJS는 버전 1.3.0-beta.10 이후 새로운 기능인 “lazy one-time binding”을 가지고 있습니다.

간단한 표현식에 접두사를 붙일 수 있으며 ::, 표현식이 처음 평가 된 후 angular가 감시를 중지하도록 지시 할 수 있습니다 . 주어진 일반적인 예는 다음과 같습니다.

<div>{{::user.name}}</div>

다음과 같은 표현식에 유사한 구문이 있습니까?

<div ng-if="user.isSomething && user.isSomethingElse"></div>
<div ng-class="{classNameFoo: user.isSomething}"></div>



답변

예. 당신이 가진 모든 표현 앞에 있습니다 ::, 심지어 사람 ngIf또는 ngClass:

<div ng-if="::(user.isSomething && user.isSomethingElse)"></div>
<div ng-class="::{classNameFoo: user.isSomething}"></div>

실제로 코드:일회성 바인딩을 활성화하기 위해 표현식의 첫 번째 문자 두 개가 있는지 확인한 다음 제거하므로 괄호가 필요하지 않습니다. 다른 모든 것은 동일하게 유지됩니다.


답변