2012-08-10 45 views

Trả lời

66

ng-nhấp chuột giữ biểu thức góc. Các biểu thức góc được đánh giá trong ngữ cảnh của Angular scope, được liên kết với phần tử có thuộc tính ng-click hoặc một tổ tiên của phần tử đó.

Ngôn ngữ biểu thức góc không bao gồm câu lệnh kiểm soát luồng và không thể khai báo biến hoặc xác định hàm. Những hạn chế này có nghĩa là các mẫu chỉ có thể truy cập các biến và các hàm chạy được cung cấp bởi một bộ điều khiển hoặc chỉ thị.

88

Góc không thay đổi ý nghĩa của thuộc tính onclick; nó thêm thuộc tính ng-click song song để lấy Angular expression. onclick mất mã JavaScript cũ ngay cả khi bạn đang sử dụng Góc.

Thực tế, giả sử bạn đang làm gì trong trình xử lý nhấp đang thay đổi một số biến trong phạm vi Góc hoặc gọi hàm trong phạm vi Góc thay đổi một số biến. Để làm điều đó từ mã JavaScript (như những gì bạn sẽ đặt trong onclick) đòi hỏi một loạt các bước

  • có được một tham chiếu đến phạm vi
  • gán biến hoặc gọi hàm
  • gọi scope.$apply để bất cứ điều gì theo dõi để cập nhật các biến mà bạn đã thay đổi được thông báo

này trông giống như:

<a onclick="var $scope = angular.element(event.target).scope(); $scope.yourVar = 42; $scope.$apply()">Go</a> 

và với ng-click và một biểu kiễu góc cho nhiệm vụ, hầu hết trong số đó là tiềm ẩn:

<a ng-click="yourVar = 42">Go</a> 
+0

này nên là câu trả lời – alaboudi

Các vấn đề liên quan