簡體   English   中英

在此示例中,Angular js使用控制器

[英]Angular js use of controller in this example

我正在閱讀這個示例的Angular JS 文檔

// testing controller
    describe('MyController', function() {
       var $httpBackend, $rootScope, createController;

       beforeEach(inject(function($injector) {
         // Set up the mock http service responses
         $httpBackend = $injector.get('$httpBackend');
         // backend definition common for all tests
         $httpBackend.when('GET', '/auth.py').respond({userId: 'userX'}, {'A-Token': 'xxx'});

         // Get hold of a scope (i.e. the root scope)
         $rootScope = $injector.get('$rootScope');
         // The $controller service is used to create instances of controllers
         var $controller = $injector.get('$controller');

         createController = function() {
           return $controller('MyController', {'$scope' : $rootScope });
         };
       }));

我的問題是createController用途是什么,我真的不明白為什么要使用它,或者在返回$controller的最后一行是什么,或者它與$scope有什么關系。

這是第二個灰色部分,在標頭下面包含代碼: 使用模擬$ httpBackend進行單元測試

幫助將不勝感激。

$controller從第一個灰色部分返回MyController的實例。 為了給控制器一些上下文,它將$rootScope傳遞到控制器的實例中。 因此,當您執行控制器時(如后續it()塊所示),控制器將運行並啟動$http.get('/auth.py')請求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM