Sekarang bahwa perbedaan kinerja antara $broadcast
dan $emit
telah dieliminasi, apakah ada alasan untuk lebih memilih $scope.$emit
ke $rootScope.$broadcast
?
Mereka berbeda, ya.
$emit
terbatas pada hierarki lingkup (ke atas) - ini mungkin bagus, jika cocok dengan desain Anda, tetapi bagi saya sepertinya pembatasan yang agak sewenang-wenang.
$rootScope.$broadcast
bekerja di semua yang memilih untuk mendengarkan acara tersebut, yang merupakan batasan yang lebih masuk akal dalam pikiran saya.
Apakah saya melewatkan sesuatu?
EDIT:
Untuk mengklarifikasi sebagai jawaban atas jawaban, arah pengiriman bukanlah masalah yang saya cari. $scope.$emit
mengirim acara ke atas, dan $scope.$broadcast
- ke bawah. Tetapi mengapa tidak selalu digunakan $rootScope.$broadcast
untuk menjangkau semua pendengar yang dituju?