我測試我的角度應用茉莉花(http://jasmine.github.io/2.0/),並獲得下一個錯誤: 未知提供商:$ scopeProvider < - $範圍 我知道,這是不正確的建立與範圍的依賴在過濾器,服務,工廠等,但我在控制器中使用$ scope! 爲什麼我得到這個錯誤?控制器看起來像
testModule.controller('TestCont', ['$filter', '$scope', function($filter, $scope){
var doPrivateShit = function(){
console.log(10);
};
this.lol = function(){
doPrivateShit();
};
this.add = function(a, b){
return a+b;
};
this.upper = function(a){
return $filter('uppercase')(a);
}
$scope.a = this.add(1,2);
$scope.test = 10;
$scope.search = {
};
}]);
和我的測試代碼:
'use strict';
describe('testModule module', function(){
beforeEach(function(){
module('testModule');
});
it('should uppercase correctly', inject(function($controller){
var testCont = $controller('TestCont');
expect(testCont.upper('lol')).toEqual('LOL');
expect(testCont.upper('jumpEr')).toEqual('JUMPER');
expect(testCont.upper('123azaza')).toEqual('123AZAZA');
expect(testCont.upper('111')).toEqual('111');
}));
});
哪裏是你的測試? – PSL 2014-10-27 15:52:31
您的控制器中的語法是正確的。很可能你在指令或服務中引用$ scope,這是不正確的。 – user2808895 2014-10-27 15:56:57
試試這個語法: angular.module('yourAppName').controller('TestCont' – Coldstar 2014-10-28 08:13:52