Teraz, że różnica wydajności pomiędzy $broadcasti $emitzostała wyeliminowana, nie ma żadnych powodów, aby wolą $scope.$emitsię $rootScope.$broadcast?
Są różne, tak.
$emit jest ograniczona do hierarchii zakresu (w górę) - może to być dobre, jeśli pasuje do twojego projektu, ale wydaje mi się to dość arbitralnym ograniczeniem.
$rootScope.$broadcastdziała we wszystkich, którzy zdecydują się słuchać tego wydarzenia, co jest bardziej rozsądnym ograniczeniem w mojej opinii.
Czy coś brakuje?
EDYTOWAĆ:
Aby wyjaśnić w odpowiedzi na odpowiedź, nie chodzi o kierunek wysyłki. $scope.$emitwywołuje zdarzenie w górę, i $scope.$broadcast- w dół. Ale dlaczego nie zawsze $rootScope.$broadcastdocierać do wszystkich zamierzonych słuchaczy?




