【发布时间】:2013-03-29 17:29:10
【问题描述】:
我正在尝试将$scope 注入 jasmine 测试,但得到异常
Unknown provider: $rootscopeProvider <- $rootscope
我的规格文件是这样的:
describe("with data returned from NormDefinitions API", function () {
const dummyData = [
{"Id": 1, "Name": "Name 1", "Description": "Description 1"},
{"Id": 2, "Name": "Name 2", "Description": "Description 1"}
];
var $scope,
mockService = {
query: function () {
return dummyData;
}
};
beforeEach(inject(function ($rootscope) {
$scope = $rootscope.$new();
}));
it("it can be instantiated", inject(function($controller) {
var controller = $controller("NormDefinitionsController",
{
$scope: $scope,
myService : mockService
});
expect(controller).not.toBeNull();
}));
});
我错过了什么?
谢谢
戴夫
【问题讨论】:
-
$rootScope大写S? -
为什么因为过于本地化而关闭?这是一个流行框架的常见错字。由于完全相同的错误,我偶然发现了这个问题,并且 3 次投票表明其他人也做了同样的事情。
-
结束这个问题的糟糕选择。这个问题和答案为我节省了大量时间。我认为这就是 StackOverflow 的全部意义所在。
-
完全同意这个“过于本地化”的决定是离谱的。在谷歌搜索并到达这里之前,我对这个问题猛烈抨击了一段时间。如果你想保护它免受“我也是!” cmets,请继续,但这绝不是“过于本地化”。这是一个容易犯的错误,但有一个简单的解决方案。
-
显然只有 BanksySan 有错别字。
标签: javascript web-applications angularjs jasmine