Bây giờ rằng sự khác biệt về hiệu năng giữa $broadcast
và $emit
đã được loại bỏ, là có lý do nào để thích $scope.$emit
để$rootScope.$broadcast
?
Họ khác nhau, vâng.
$emit
được giới hạn trong hệ thống phân cấp phạm vi (trở lên) - điều này có thể tốt, nếu nó phù hợp với thiết kế của bạn, nhưng dường như đối với tôi là một hạn chế khá tùy tiện.
$rootScope.$broadcast
hoạt động trên tất cả những gì chọn để lắng nghe sự kiện, đó là một hạn chế hợp lý hơn trong tâm trí của tôi.
Tui bỏ lỡ điều gì vậy?
BIÊN TẬP:
Để làm rõ để trả lời câu trả lời, hướng của công văn không phải là vấn đề tôi đang theo đuổi. $scope.$emit
gửi sự kiện lên trên và $scope.$broadcast
- xuống dưới. Nhưng tại sao không luôn luôn sử dụng $rootScope.$broadcast
để tiếp cận tất cả những người nghe dự định?