ReferenceError:找不到变量:$ controller

贝内齐

好的,所以我试图第一次在Jasmine上开始Angular JS项目的单元测试,但遇到了一些障碍。

我正在关注此博客文章中有关如何在Visual Studio中进行所有设置的很好的参考。

我的测试在一个类库项目中,看起来像这样:

/// <reference path="../../../../src/tasks.web/scripts/angular-1.2.10.js" />
/// <reference path="../../../../src/tasks.web/scripts/angular-route-1.2.10.js" />
/// <reference path="../../../../src/tasks.web/scripts/app.js" />
/// <reference path="../../../../src/tasks.web/scripts/controllers.js" />
/// <reference path="../lib/angular/angular-mocks.js" />

describe("TaskListController", function () {
    beforeEach(module('taskApp.controllers'));

    it("has tasks defined", function() {
        var $scope = {};
        $controller("TaskListController", { $scope: $scope });
        expect($scope.tasks).toBeDefined();
    });
});

我的应用程序的其余部分看起来像这样:

app.js

var app = angular.module("taskApp", [
    "ngRoute",
    "appControllers"
]);

app.config(["$routeProvider",
    function($routeProvider) {
        $routeProvider.
            when("/tasks", {
                templateUrl: "partials/task-list.html",
                controller: "TaskListController"
            }).
            otherwise({
                redirectTo: "/tasks"
            });
    }
]);

controller.js

var appControllers = angular.module("appControllers", []);

appControllers.controller("TaskListController", function ($scope) {
    $scope.tasks = {};
});

所有引用的文件都在那里(没有404)。Visual Studio很好地找到了测试并运行了它,但是我得到了ReferenceError: Can't find variable: $controller

我很高兴收到任何帮助,因为我知道我真的很努力进行这项工作,而且我知道这只是我所缺少的一些简单信息。

迈克尔

您需要注入$controller一种方法是:

it("has tasks defined", inject(function($controller) {
   var $scope = {};
   $controller("TaskListController", { $scope: $scope });
   expect($scope.tasks).toBeDefined();
}));

另外,您还需要在 beforeEach

因此,您需要执行以下操作:

beforeEach(module('appControllers'));

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

ReferenceError:找不到变量:$

来自分类Dev

ReferenceError:找不到变量:__gCrWeb

来自分类Dev

ReferenceError:找不到变量:__fbBatchedBridge

来自分类Dev

ReferenceError:找不到变量:functionName

来自分类Dev

ReferenceError:找不到变量:导航

来自分类Dev

ReferenceError:找不到变量:标记

来自分类Dev

ReferenceError:找不到变量:__DEV__

来自分类Dev

获取ReferenceError:找不到变量:angular

来自分类Dev

(Wordpress / Ajax)ReferenceError:找不到变量:ajaxobject

来自分类Dev

ReferenceError:找不到变量:loadMoviesLikedDetails(反应本机)

来自分类Dev

ReferenceError:在React Native中找不到变量

来自分类Dev

(Wordpress / Ajax)ReferenceError:找不到变量:ajaxobject

来自分类Dev

对Spring Controller的请求返回404找不到

来自分类Dev

找不到类“ Base_Controller”

来自分类Dev

Spring boot Controller找不到bean类

来自分类Dev

业力测试:PhantomJS:ReferenceError:找不到变量:音频

来自分类Dev

grunt-contrib-jasmine ReferenceError:找不到变量:jQuery

来自分类Dev

CasperJS-使用jQuery。ReferenceError:找不到变量:jQuery / $

来自分类Dev

ReferenceError:找不到变量:在以下位置需要

来自分类Dev

grunt-contrib-jasmine ReferenceError:找不到变量:jQuery

来自分类Dev

单元测试中的“ReferenceError:找不到变量:Mustache”?

来自分类Dev

Codeigniter致命错误:在中找不到类“ CI_Controller”

来自分类Dev

在FXML Controller类中找不到可注入字段

来自分类Dev

找不到致命错误CodeIgniter CI_Controller

来自分类Dev

Nginx Ingress Controller在Google Kubernetes Engine上找不到节点

来自分类Dev

Nestjs错误:找不到模块“ ./app.controller”

来自分类Dev

找不到致命错误CodeIgniter CI_Controller

来自分类Dev

Codeigniter Controller类登录表单:找不到404页

来自分类Dev

AngularJS - 找不到我的 ng-controller 的名称

Related 相关文章

  1. 1

    ReferenceError:找不到变量:$

  2. 2

    ReferenceError:找不到变量:__gCrWeb

  3. 3

    ReferenceError:找不到变量:__fbBatchedBridge

  4. 4

    ReferenceError:找不到变量:functionName

  5. 5

    ReferenceError:找不到变量:导航

  6. 6

    ReferenceError:找不到变量:标记

  7. 7

    ReferenceError:找不到变量:__DEV__

  8. 8

    获取ReferenceError:找不到变量:angular

  9. 9

    (Wordpress / Ajax)ReferenceError:找不到变量:ajaxobject

  10. 10

    ReferenceError:找不到变量:loadMoviesLikedDetails(反应本机)

  11. 11

    ReferenceError:在React Native中找不到变量

  12. 12

    (Wordpress / Ajax)ReferenceError:找不到变量:ajaxobject

  13. 13

    对Spring Controller的请求返回404找不到

  14. 14

    找不到类“ Base_Controller”

  15. 15

    Spring boot Controller找不到bean类

  16. 16

    业力测试:PhantomJS:ReferenceError:找不到变量:音频

  17. 17

    grunt-contrib-jasmine ReferenceError:找不到变量:jQuery

  18. 18

    CasperJS-使用jQuery。ReferenceError:找不到变量:jQuery / $

  19. 19

    ReferenceError:找不到变量:在以下位置需要

  20. 20

    grunt-contrib-jasmine ReferenceError:找不到变量:jQuery

  21. 21

    单元测试中的“ReferenceError:找不到变量:Mustache”?

  22. 22

    Codeigniter致命错误:在中找不到类“ CI_Controller”

  23. 23

    在FXML Controller类中找不到可注入字段

  24. 24

    找不到致命错误CodeIgniter CI_Controller

  25. 25

    Nginx Ingress Controller在Google Kubernetes Engine上找不到节点

  26. 26

    Nestjs错误:找不到模块“ ./app.controller”

  27. 27

    找不到致命错误CodeIgniter CI_Controller

  28. 28

    Codeigniter Controller类登录表单:找不到404页

  29. 29

    AngularJS - 找不到我的 ng-controller 的名称

热门标签

归档