Ho una funzione condivisa che restituisce l'ambito dell'elemento più in alto (documento) nella mia applicazione AngularJS.
function topScope() {
return angular.element(document).scope();
}
Questo funziona sempre e sono sempre garanzia di avere accesso a qualsiasi subscopes situati all'interno dell'applicazione (che si tratti di controllori all'interno o direttive).
Ecco un esempio di quello che vorrei usarlo per:
topScope().$emit('pageReady');
Ora ho notato che $ rootScope funziona anche nello stesso modo.
$rootScope.$emit('pageReady');
Che funziona anche e raggiunge lo stesso effetto. Ma poiché $ rootScope è progettato per essere l'ambito "$ scope off the shelf" (qualsiasi ambito creato erediterà i suoi metodi e proprietà), allora questo vuol dire che è in realtà l'ambito più in alto della pagina? Quindi essere il genitore dell'oggetto scope collegato al nodo del documento?
Sì, RootScope è il genitore di tutti gli ambiti. – ganaraj