Angularjs 什麼時候使用 Controller、Service、Directive

較全面介紹:http://angularjs.cn/A0kK

 

1、使用 controller:

 

一個控制器應該是很簡潔精煉的

 

1.初始化$scope對象。

2.爲$scope對象附加行爲。

錯誤的使用方式:

1.操作DOM -- 控制器中應該只包含業務邏輯。把業務邏輯放到控制器中,可以顯著提高可測試性。Angualr大多數情況下使用數據綁定和封裝指令來實現手動DOM操作。而不是直接在controller裏面操作DOM。

2.格式輸入 -- 應該使用Angular的表單控件,而不是用原生的表單控件。

3.filter過濾器 -- 應該使用Angular的filter來代替原生的過濾器。

4.跨控制器共享代碼或狀態 -- 應該使用Angular的服務來代替。

5.管理其他組件的生命週期(例如,創建服務實例)。

 

2、使用服務(factory、service、provider)

 

在應用中的不同代碼塊之間共享數據。

大多數的商業邏輯和一些重複性的數據都應該要存儲到服務中。

Angular在你每次切換路由的時候,就會清理當前的控制器。服務爲我們提供了一種長期存儲應用數據的方式,

同時,也可以在不同的控制器之間統一的使用服務。

 

  • 所有的供應商都只被實例化一次,也就說他們都是單例的

  • 除了constant,所有的供應商都可以被裝飾器(decorator)裝飾

  • value就是一個簡單的可注入的值

  • service是一個可注入的構造器

  • factory是一個可注入的方法

  • decorator可以修改或封裝其他的供應商,當然除了constant

  • provider是一個可配置的factory

 

 

3、指令

 

指令主要用於操作DOM結構的時候

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章