2015-06-25 66 views
0

這是我第一個使用Angularjs的應用程序。如何使用angularjs將服務重定向到主控制器?

我使用AngularJs創建了一個應用程序,該應用程序可以從API響應中帶來旅程細節。我有多個控制器,每個控制器都有不同的頁面。

我的問題是我有四個鏈接(鏈接看起來像西班牙,法國,印度,美國等)在我的每頁頁腳。如果我點擊其中的一個,我應該在主控制器上顯示各自的API結果。請查看下圖以瞭解頁面流。

for reference

預先感謝您!

+0

你的路線文件是什麼樣的? – Jax

+0

路徑文件的意思是? – s1lam8u

回答

0

服務將是完美的。如果使用顯示數據的功能創建服務,則可以在每個控制器中注入服務。這樣,如果您點擊頁腳中的鏈接,數據就會顯示!

檢查here對角服務

+0

所以我需要傳遞每個控制器中的依賴關係? – s1lam8u

+0

是的,如果你創建了一個你想在多個控制器中使用的服務,那麼你需要在你想使用該服務的每個控制器中傳遞依賴關係。 – Guinn

+0

是的,你需要將服務名稱傳遞給控制器​​應用程序。控制器('BlaBlaController',函數($ scope,$ yourservice){}); –

0

文檔和示例假設你有一個頁面在這裏:

page1.php中

你調用Page1Controller此頁面。

,並要使用MainController<form> ... </form>, 比使用NG控制器 ...

<html> 
<head></head> 
<body> 
<form ng-controller="MainController"> 
. . . // Code here 
</form> 
</body> 
</html> 
0

我以前有一個相當的要求。這是我做到的。

將您的全局方法創建爲service並用它來維護當前選擇的API。

當用戶點擊頁腳鏈接,你可以綁定一個NG單擊事件和廣播將由該服務的$上函數處理的事件。

您可以檢查this example瞭解更多信息。

+0

謝謝,如果點擊按鈕,我打電話給服務。從服務如何重定向主控制器與響應數據? – s1lam8u

+0

您可以爲此播放事件。在服務中,您可以爲$ rootScope調用$ broadcast並使用$ on在主控制器中捕獲它。這將允許您傳遞數據,如果您將來需要甚至在其他控制器,服務,指令等中重複使用它。 –

+0

好的,謝謝!我會盡力讓你知道! – s1lam8u

相關問題