2016-01-22 219 views
0

AngularJS中定義全局變量的最佳方法是什麼?AngularJs定義全局變量

我知道有很多解決方案的這個話題,最黎民:

  • 使用的服務;
  • 使用$ rootScope;

我想要一個不同的上下文的答案。例如:

  • 用於多個服務中的多個請求的公共url:my/folder/class.php;
  • 主要模塊的名稱:myApp;
  • 爲某個錯誤黎民警報消息:將使用過的所有應用程序,在不同的情況下,將不會改變Failed to connect to the server, try again.

的事情。


環顧互聯網只見2種以外的其他可能性,然後$rootScopeservices

  • 使用AngularJS constants;
  • 使用JSvar以外主ng模塊;

所以我的問題是:對於AngularJs場景,什麼是最好的選擇?

我們真的在這種情況下使用constants嗎?有沒有其他供應商爲此目的。此外,我想知道最新的性能影響,如果有的話。

+0

除非這些值應該改變,我相信'常量'是首選的方式。 –

+0

@SeanLarkin你的意思是,通過比較'恆定'與'服務'? – celsomtrindade

+0

我誤解了我的答案,因爲我誤解了這個問題。兩者都必須注入才能使用。我想你也可以使用'value'作爲選項。使用'.constant'的好處是它可以注入到配置中,並且不能被裝飾器覆蓋。 –

回答

0

對於常量使用角常量。如果您的值可能需要配置或計算,請使用Angular服務並公開getter函數。對於字符串,您可能需要考慮本地化,因此請使用Angular本地化庫中的一個來存儲這些庫(我使用Angular-localize)。

希望這是有幫助的。