Hai dấu hai chấm bên trong biểu thức góc {{::}} có nghĩa là gì?


Câu trả lời:


85

Các {{::office.name}}cú pháp là góc của One-Time ràng buộc, sẵn kể từ phiên bản 1.3
Đây là một blog đẹp giải thích nó.


99

Liên kết một lần từ Angular Docs.

Biểu thức bắt đầu bằng ::được coi là biểu thức một lần. Các biểu thức một lần sẽ ngừng tính toán lại khi chúng ổn định, điều này xảy ra sau lần thông báo đầu tiên nếu kết quả biểu thức là một giá trị không xác định (xem thuật toán ổn định giá trị bên dưới).

Trong nhiều trường hợp, các giá trị cần chỉ được hiển thị trong chế độ xem và sẽ không bao giờ cập nhật từ chế độ xem hoặc bộ điều khiển. Tuy nhiên, nếu sử dụng ràng buộc hai chiều, $digestsẽ kiểm tra bất kỳ thay đổi nào trong biểu thức trong mỗi chu kỳ, điều này là không cần thiết. Trong những trường hợp này, ::nên được sử dụng trước khi biểu hiện. Như đã nêu trong câu lệnh trên, điều này hiệu quả hơn cú pháp ràng buộc hai chiều cho những trường hợp như vậy.


Blog: Cú pháp ràng buộc một lần AngularJS từ Phương châm @Todd

Trong một nut shell, khi chúng ta khai báo một giá trị chẳng hạn như {{ ::foo }}bên trong DOM, khi giá trị này được xác định, Angular sẽ hiển thị nó, hủy liên kết nó khỏi các watchers và do đó giảm khối lượng ràng buộc bên trong $digestvòng lặp. Đơn giản!

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.