在具有Angular2 beta和SystemJS的Karma单元测试中加载angular2-polyfilles.js时出现_setAsap错误

维萨里

运行业力单元测试时,出现以下错误:

Chrome 47.0.2526(Linux 0.0.0)错误
未捕获的TypeError:无法读取未定义的属性'_setAsap'
评估路径/node_modules/angular2/bundles/angular2-polyfills.min.js
加载path / node_modules / angular2 / bundles / angular2-时出错polyfills.min.js

karma.conf.js包含如下:

// Karma configuration
// Generated on Tue Dec 08 2015 14:19:08 GMT-0600 (CST)
module.exports = function(config) {
    config.set({
        // base path that will be used to resolve all patterns (eg. files, exclude)
        basePath: '../',
        files: [
            'node_modules/angular2/bundles/angular2-polyfills.min.js',
            'node_modules/es6-shim/es6-shim.js',
            'node_modules/systemjs/dist/system.js',
            'node_modules/rxjs//Rx.js',
            'node_modules/angular2/bundles/angular2.min.js',
            'dist/components/uploader.js',
            'dist/components/uploader.spec.js'
        ],
        ...

uploader.js是打字稿编译JavaScript文件,是一个Angular2组件。Uploader.spec.js是单元测试。我使用Karma,SystemJS和Angular2 beta来尝试设置单元测试。

当查看_angular2_polyfills.js_时,_setAsap似乎指向module es6-promise但是,即使我已将其node_modules/es6-promise/dist/es6-promise.js添加到文件列表中,也无法正常工作。

雅克·杰克

因此,我遇到了类似的问题,必须将其添加到我的system.conf.js文件中:

System.config({
    paths: {
        'agular2-polyfills': 'node_modules/angular2/bundles/angular2-polyfills.js',
        'typescript': 'node_modules/typescript/lib/typescript.js',
        'systemjs': 'node_modules/systemjs/dist/system.js',
        'system-polyfills': 'node_modules/systemjs/dist/system-polyfills.js',
        'es6-module-loader': 'node_modules/es6-module-loader/dist/es6-module-loader.js'
    },
    map: {
        angular2: 'node_modules/angular2',
        rxjs: 'node_modules/rxjs',
        crypto: '@empty'// this fixed my last issue
    },
    meta: {
        'path/to/components/*': {
            format: 'register'
        }
    }
});

如果在浏览了几个堆栈问题并阅读了config文档之后,我没有记错(我不声称自己是systemjs ninja,我就来到了这个解决方案,但是我不记得它的某些原因,除了它具有与必须使用业力加载所有内容有关。

我的karma.conf文件数组:

// list of files / patterns to load in the browser
    files: [
      'node_modules/reflect-metadata/Reflect.js',
      '*.spec.js',
      '**/*.spec.js',
      '**/**/*.spec.js'
    ]

和karma.conf systemjs配置:

systemjs: {
    // Path to your SystemJS configuration file 
    configFile: 'system.conf.js',

    // Patterns for files that you want Karma to make available, but not loaded until a module requests them. eg. Third-party libraries. 
    serveFiles: [
        'client/**/*.js',
        'server/**/*.js',
    ],

    // SystemJS configuration specifically for tests, added after your config file. 
    // Good for adding test libraries and mock modules 
    config: {
        transpiler: null,
        defaultJSExtensions: true
    },

    meta: {
        'angular2/angular2':{
            format: 'register'
        }
    }
},

重要说明这可能不是最好的方法,甚至不是最好的方法,但这就是我的工作方式。我尚未在项目的这一部分完成重构阶段,因为在完成项目的第一阶段之后,我将进行重构

祝你好运!

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用SystemJS在Angular2应用程序中加载bootstrap.js,jQuery和其他模块

来自分类Dev

订阅时出现Angular2错误

来自分类Dev

Angular 2 和 karma-jasmine 单元测试用例在点击链接时打开模态

来自分类Dev

在angular2 RC4中加载时出现错误:错误:XHR错误(找不到404)加载

来自分类Dev

使用 jasmine 运行 angular2 单元测试时调用服务时出错

来自分类Dev

angular2 - 模板没有出现

来自分类Dev

使用业力和Jasmin在Angular2单元测试中未加载TemplateUrl

来自分类Dev

Angular2:当我使用缩小版(.min)的js时出现错误

来自分类Dev

Angular2-使用PhantomJS运行单元测试时出现配置错误

来自分类Dev

14次测试后出现Angular / Karma单元测试错误-无论测试本身如何

来自分类Dev

带有Typescript的Angular2-加载angular2 / platform / browser时出错

来自分类Dev

加载和页面过渡时的Angular2动画

来自分类Dev

遵循Angular2快速入门beta.0时无法加载boot.js

来自分类Dev

无法在angular2中使用SystemJS加载phoenix js库

来自分类Dev

异常:使用带有RxJS和Angular2的Observables时出现ObjectUnsubscribedError

来自分类Dev

使用templateUrl时Angular2测试错误

来自分类常见问题

使用@Input()进行Angular2单元测试

来自分类Dev

Angular2单元测试+创建接口对象

来自分类Dev

Angular2在单元测试中注入ElementRef

来自分类Dev

对需要Electron的Angular2服务进行单元测试

来自分类Dev

Angular2 单元测试 Click() 与按键

来自分类Dev

Angular2 highcharts 点没有出现

来自分类Dev

Typescript编译器错误TS2307:在没有NPM的CDN中加载时,找不到模块“ angular2 / core”

来自分类Dev

Angular2和TypeScript导入错误

来自分类Dev

错误:ENOENT:Angular2和Express.js没有此类文件或目录

来自分类Dev

Angular2“没有导出的成员引导程序”错误

来自分类常见问题

错误:在angular2中没有HttpHandler的提供程序

来自分类Dev

Angular2没有提供服务错误的提供程序

来自分类Dev

Angular2没有错误响应

Related 相关文章

  1. 1

    如何使用SystemJS在Angular2应用程序中加载bootstrap.js,jQuery和其他模块

  2. 2

    订阅时出现Angular2错误

  3. 3

    Angular 2 和 karma-jasmine 单元测试用例在点击链接时打开模态

  4. 4

    在angular2 RC4中加载时出现错误:错误:XHR错误(找不到404)加载

  5. 5

    使用 jasmine 运行 angular2 单元测试时调用服务时出错

  6. 6

    angular2 - 模板没有出现

  7. 7

    使用业力和Jasmin在Angular2单元测试中未加载TemplateUrl

  8. 8

    Angular2:当我使用缩小版(.min)的js时出现错误

  9. 9

    Angular2-使用PhantomJS运行单元测试时出现配置错误

  10. 10

    14次测试后出现Angular / Karma单元测试错误-无论测试本身如何

  11. 11

    带有Typescript的Angular2-加载angular2 / platform / browser时出错

  12. 12

    加载和页面过渡时的Angular2动画

  13. 13

    遵循Angular2快速入门beta.0时无法加载boot.js

  14. 14

    无法在angular2中使用SystemJS加载phoenix js库

  15. 15

    异常:使用带有RxJS和Angular2的Observables时出现ObjectUnsubscribedError

  16. 16

    使用templateUrl时Angular2测试错误

  17. 17

    使用@Input()进行Angular2单元测试

  18. 18

    Angular2单元测试+创建接口对象

  19. 19

    Angular2在单元测试中注入ElementRef

  20. 20

    对需要Electron的Angular2服务进行单元测试

  21. 21

    Angular2 单元测试 Click() 与按键

  22. 22

    Angular2 highcharts 点没有出现

  23. 23

    Typescript编译器错误TS2307:在没有NPM的CDN中加载时,找不到模块“ angular2 / core”

  24. 24

    Angular2和TypeScript导入错误

  25. 25

    错误:ENOENT:Angular2和Express.js没有此类文件或目录

  26. 26

    Angular2“没有导出的成员引导程序”错误

  27. 27

    错误:在angular2中没有HttpHandler的提供程序

  28. 28

    Angular2没有提供服务错误的提供程序

  29. 29

    Angular2没有错误响应

热门标签

归档