另外因為 Controller 常常需要依賴一些 Service Object 來做一些邏輯處理或後端的溝通
因此也說明了運用了 $injector 來將 Service Object 注入到 Controller,以利 Controller 的測試
不過有時候在開發的過程中,常常會遇到我們所開發的元件中所相依的元件還沒開發完成或是是別人的工作
例如我在開發某個 Controller 元件的時候,可能需要依賴很多的 Service
但這些 Service 可能尚未完成等等之類的因素,但為了確保我的 Controller 能夠如期完成並政常運作
先用模擬的方式來模擬這些 Service ,讓我的開發與測試能夠順利完成
而這些被模擬的東西我們可以稱為 mock object 或是 fake object
所以本篇會說明如何利用 $provide 來建立一個 mock 的 Service object
假設在 SampleCtrl 中我們需要依賴一個 TodoService
angular.module('sampleApp',
[])
.controller("SampleCtrl", function($scope,
TodoService){
$scope.todos = TodoService.getTodos();
});