반응형
ng-click이 필요한 이유는 무엇입니까?
Angular 앱 ng-click()
은 onclick
이벤트가 아닌 속성을 사용합니다 .
왜 이런거야?
ng-click은 각도 표현을 유지합니다. Angular 표현식은 Angular 범위 의 컨텍스트에서 평가되며 , 이는 ng-click 속성이있는 요소 또는 해당 요소의 상위 요소에 바인딩됩니다.
Angular 식 언어는 흐름 제어 문을 포함하지 않으며 변수를 선언하거나 함수를 정의 할 수 없습니다. 이러한 제한은 템플릿이 컨트롤러 또는 지시문에서 사용할 수있는 변수에 액세스하고 함수를 실행할 수 있음을 의미합니다.
Angular는 onclick
속성 의 의미를 변경하지 않습니다 . Angular 표현식을 사용ng-click
하기 위해 parallel 속성을 추가합니다 . Angular를 사용할 때도 평범한 오래된 JavaScript 코드를 사용합니다.onclick
실제로 클릭 핸들러에서 수행하는 작업이 Angular 범위의 일부 변수를 변경하거나 일부 변수를 변경하는 Angular 범위의 함수를 호출한다고 가정합니다. JavaScript 코드에서이를 수행하려면 (예 : 입력 할 내용 onclick
) 여러 단계가 필요합니다.
- 범위에 대한 참조를 얻다
- 변수 할당 또는 함수 호출
scope.$apply
변경 한 변수에 대한 업데이트를 감시하는 모든 것이 알림을 받도록 호출
이것은 다음과 같습니다.
<a onclick="var $scope = angular.element(event.target).scope(); $scope.yourVar = 42; $scope.$apply()">Go</a>
및 ng-click
할당에 대한 Angular 표현식을 사용하면 거의 모든 것이 암시 적입니다.
<a ng-click="yourVar = 42">Go</a>
참고 URL : https://stackoverflow.com/questions/11902379/why-do-we-need-ng-click
반응형
'code' 카테고리의 다른 글
분기 한 GitHub 프로젝트를 변경하려면 어떻게해야합니까? (0) | 2020.10.24 |
---|---|
루비의 해시 해시를 어떻게 반복합니까? (0) | 2020.10.23 |
DataURL의 Blob? (0) | 2020.10.23 |
Amazon 외부의 Amazon Elasticache Redis에 연결할 수 있습니까? (0) | 2020.10.23 |
Docker CMD를 여러 번 사용하여 여러 서비스를 실행할 수없는 이유는 무엇입니까? (0) | 2020.10.23 |