2017-02-04 24 views
0

我有一個Angular js factory。我在成功登錄後存儲用戶信息。現在我有多個controllers在他們所有我需要這個用戶信息,所以我需要inject這個工廠到每個controller。有沒有辦法在整個項目中訪問這個factory數據而不注入每個控制器?如何在整個項目中使用Angular工廠數據

我們可以直接將inject它變成module嗎?

回答

1

幾點建議:

  • 存儲在工廠的用戶信息是不是一個好辦法,因爲如果用戶重新載入頁面將恢復出廠數據和用戶就不會存在了。
  • sajeetharan建議,您可以使用HTML5 localStoragesessionStorage來存儲用戶信息。所以,如果沒有注入,您可以隨時隨地訪問存儲的存儲值。
  • 是的,如果您需要用戶信息,所以您需要將工廠注入到每個控制器,因爲從一個控制器切換到另一個控制器時,您必須從工廠獲取數據。如果僅在工廠中注入工廠主模塊,當您從成功登錄移動到其他頁面時,它不會加載工廠。
0

用戶信息可以存儲在local storage或cookie中,以便我可以在任何地方訪問。

您也可以考慮使用$rootScope,在這種情況下,您還需要注入所有您需要的模塊。

-2

工廠是模塊的一部分。 將其注入到所需的控制器中是在整個模塊中使用保存值的​​方式。

相關問題