2015-05-13 103 views
1

嗨,我是Angularjs的新人。我正在閱讀有關Angular服務。我已閱讀以下 what-is-difference-between-factory-service-and-providerservice-vs-provider-vs-factory。對我來說,它們似乎是達到同一目標的不同方式(如果我錯了,請糾正我)。現在我想知道它們都服務於同一個目標,哪一個是想法使用並被認爲是最佳實踐?在Angularjs中使用哪一種:工廠,服務和提供商?

+0

也許[這篇博客文章](http://blog.xebia.com/2013/09/01/differences-between-providers-in-angularjs/)會有一些亮點,請檢查一下。 –

+0

[Service vs provider vs factory?]的可能重複(http://stackoverflow.com/questions/15666048/service-vs-provider-vs-factory) – scniro

回答

2

沒有最好的做法,沒有人會告訴你,一個比其他(服務VS廠)更好。

如果您需要在運行時配置您的服務(如配置您的路由器),請使用提供者。

要何時使用工廠或何時使用服務,它們是相同的。

工廠有最簡單的語法來理解(使用揭示模塊模式),這是最常見的選擇。

在另一方面,服務現在更「有用」,因爲它們使用相同的語法角2級的服務,因此,如果您在遷移計劃有一天,現在使用的服務將幫助過渡。

3

聽起來像問題是什麼時候使用哪個。首先要注意的是,他們都是提供者。每一個都是另一個從provider開始的更專業的版本。 factoryprovider的專用版本。 value和服務又是factory的專用版本。

而且constantvalue彼此的專門版本。因爲provider位於頂端,因此可以做所有其他提供商可以使用的僅僅是提供商。但是你會寫很多不必要的代碼。

各專業提供商環比下跌,如果你能使用它可以讓你完成在更少的代碼同樣的事情。所以你可以說最好的做法是使用完成你想要的東西的鏈條。

這是一個高層次的圖像顯示你明白我的意思:

http://www.simplygoodcode.com/wp-content/uploads/2015/11/angularjs-provider-service-factory-highlight.png

而且下面是鏈接到博客張貼的圖片是從,讓你更多的例子:

http://www.simplygoodcode.com/2015/11/the-difference-between-service-provider-and-factory-in-angularjs/

相關問題