2012-11-08 77 views
0

我是AngularJS的新手,範圍的概念讓我很困惑。我有一種情況,我想修改一個對象或來自不同作用域的變量。原因如下: 在我的應用程序中我想集中用戶通知控制器和通知視圖。 在頁面的中間頂部。我將我的代碼分開如下:每個視圖都有其控制器,我認爲它是公平合理的。我想注入一個服務或一些常見的對象,當在一個普通的地方用一些字符串參數調用它的函數時,我發現我無法注入$ scope服務。所以,當如何在AngularJS的範圍內修改對象?

回答

2

你想要的是在控制器之間進行通信。這很容易實現可以在控制器之間廣播消息(或對象)的服務。

有關於這一個很好的YouTube:

http://www.youtube.com/watch?v=1OALSkJGsRw

+0

謝謝我會檢查出來的晚,但現在它的時間去:D – Adelin

+0

我看了視頻。老實說,我不喜歡這種溝通的方式,因爲我必須把$ scope放在$('someEvent',function(){});在我的每一個控制器中。而且改變一個事件的名字很容易出錯。 – Adelin

+0

您也可以傳遞'rootScope'allong並在'rootScope'中使用公共屬性和方法 – JvdBerg

0

確定這裏就是我在我的應用程序已經完成。我是一名java程序員,我曾經與GWT

在GWT中,它是一個非常好的設計模式,用於通知應用程序中的小部件,稱爲EventBus。在角度上,我試圖做類似的事情。這裏是代碼鏈接gist