我想知道AngularJS中是否存在一個約定,用於創建一個對象,該對象位於應用程序模塊內,但並不以任何方式直接附加到視圖,而是在視圖已經加載,應用程序啓動。特別是,我試圖編寫一個對象,當它們從服務器進入時,將消息分派給監聽控制器。
目前,我通過創建一個附加到視圖的「控制器」來實現此目的。它有一個monitor()
函數,在頁面加載時調用,然後在循環中偵聽任何傳入消息。我所說的monitor()
函數從加載的視圖中,通過設置NG控制器像這樣:創建AngularJS對象,調用應用程序加載方法
<div ng-controller="MyController">
{{ monitor() }}
</div>
這並不覺得自己做了正確的事情。這個「控制器」並沒有以任何方式與視圖進行交互,所以我的直覺告訴我,我違反了AngularJS的原則。但是我還沒有能夠找到一個由AngularJS doc支持的簡單解決方案。
我正在尋找一種方法來創建一個生活在AngularJS世界中的對象(換句話說,它可以使用依賴注入來訪問服務,並且它可以使用$scope.$broadcast
向其他監聽控制器發送消息),但不需要以任何方式將自己固定在視圖上。
理想情況下,我正在尋找一種方法來說,「這裏Angular在啓動時創建此對象,並在其上運行此方法。」有沒有辦法做到這一點?
有記錄[** HERE **](https://docs.angularjs.org/api/ng/type/angular .Module#運行) – jshanley