angular.js - angular-test的inject时总是出现[$injector:unpr] Unknown provider问题
滿天的星座
滿天的星座 2017-05-15 17:08:32
0
1
527

您好,以下是我遇到的问题:
但是在官方文档上面,它是将inject步骤提到了beforeEach,而我用官方的那种方法写,它总是会显示unknown ControllerProvider的错误,
一下是我按照官方文档写的代码:

describe('indexCtrl',function(){
        var $controller;
        beforeEach(module('controllers'));
        beforeEach(inject(function(_controller_){
            $controller = _controller_;
        }));

        describe('the add function should be right',function(){
            it('should be 34',function(){
                var $scope = {};
                var controller = $controller('indexCtrl',{$scope: $scope});
                $scope.add(14,20);
                except(controller).toBeDefined();
                except($scope.sum).toEqual(34);
            })
        })
})

一下是报的错误:

    Error: [$injector:unpr] Unknown provider: controllerProvider <- controll

er

    http://errors.angularjs.org/1.5.8/$injector/unpr?p0=controllerProvider%2

0%3C-%20controller

一下是我按照网上某个实例修改过的代码:

it('add test', inject(function ($controller) {
            var $scope = {};
            //spec body
            var indexCtrl = $controller('indexCtrl', {$scope: $scope});
            expect(indexCtrl).toBeDefined();
            expect($scope.add(2, 3)).toEqual(5);
 }));
    测试通过

不知道是什么原因,按理说官网所给出的不会有错,这两个代码只是注入的顺序不同而已。希望大家能帮帮忙

滿天的星座
滿天的星座

全部回复(1)
某草草

我也是这个问题,请问,哪里出了问题,是怎么解决的?

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!