首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >包含ngMock时无法加载Angular应用程序

包含ngMock时无法加载Angular应用程序
EN

Stack Overflow用户
提问于 2015-03-28 18:23:29
回答 1查看 189关注 0票数 2

我正在使用ngMock在Angular中进行单元测试。我现在有了一个browserify \w Angular设置。我有一些奇怪的行为。当我只是用require('angular-mocks');加载angular-mock时,我的测试和应用程序就正常工作了。但如果我随后将其作为依赖项加载到我的Angular应用程序模块中,它将不再加载我的Angular应用程序,但我的karma测试仍然有效:

代码语言:javascript
复制
(function () {
    'use strict';

    require('angular');
    require('angular-route');
    require('angular-mocks');
    require('./home');

    angular.module('greenboxUi', [
        'ngRoute',
        //'ngMock',
        'greenboxUi.home'
    ]);
}());

如果我取消对ngMock的注释,我的应用程序将不再加载

我的browserify-shim:

代码语言:javascript
复制
'angular-mocks': {
       path: './app/bower_components/angular-mocks/angular-mocks.js',
       exports: 'angular.mock',
       depends: {
          angular: 'angular'
       }
 }

我的测试:

代码语言:javascript
复制
beforeEach(function(){
    module('greenboxUi.home');
    inject(function($controller){
        controller = $controller('HomeCtrl');
    });
});
it('test test', function() {
    expect(controller.hello).toBe('Hello world');
});

我的应用程序在注释“ngMock”时确实可以工作,但我只是觉得它有点奇怪,因为Angular文档确实会用angular.module('app', ['ngMock'])加载它。是因为browserify以某种方式包装了模块吗?

亲切的问候,尼尔斯

EN

回答 1

Stack Overflow用户

发布于 2015-08-31 17:50:20

事实上,ngMock不应该添加到"production“项目的依赖项中。

有关更多信息,请参阅此github问题:https://github.com/angular/angular.js/issues/12137

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29316012

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档