Hallo Ich schreibe meinen ersten Winkeltest mit Jasmin, aber ich bekomme immer den Fehler
------ Test gestartet: Datei: C: \ Benutzer \ Regan \ Dokumente \ Visual Studio 2013 \ WebSites \ Regan \ TestApp \ TestProject \ ng-Tests \ MainCtrlSpec.js ------ Test 'MainCtrl mit Inline-Mock: sollte labeln' fehlgeschlagen Fehler: [$ injector: unpr] Unbekannter Provider: $ scopeProvider & lt; - $ scope & lt; - MainCtrl
Ich habe versucht, damit herumzuspielen, bin aber festgefahren. Wenn Sie das Problem sehen, lassen Sie es mich wissen. Wenn Sie mehr Code benötigen, lassen Sie es mich bitte wissen, aber ich denke, dass das Problem in diesen beiden Dateien liegt.
MainCtrlSvc.js
%Vor%MainCtrl.js
%Vor% Da es keinen $scope
Dienst gibt, kann $controller
provider das injizierte Argument $scope
nicht instanziieren.
Sie müssen den Bereich bereitstellen, während Sie einen Controller mit dem $controller
-Provider instanziieren. Du kannst $rootScope
in dein setUp einfügen und du kannst einen untergeordneten Bereich bekommen, indem du $rootScope.$new()
machst. Inject es als ein Argument zu dem $controller
contstructor. d. h. $controller("MainCtrl", {$scope:scope })
wobei scope der neue untergeordnete scope ist, auch wenn Sie $ rootScope übergeben können.
d. h.
%Vor%Tags und Links angularjs unit-testing