使用Angular 4 CLI添加外部依赖关系进行业力测试 - Lodash案例

时间:2017-11-22 16:58:45

标签: angular angular-cli lodash karma-webpack

我在这里设置了一个简单的Angular CLI repo来演示我的问题,https://github.com/hummorsa/angular-cli-lodash-test/

基本上在这个测试中:

it('should sort Users', async(() => {
 const fixture = TestBed.createComponent(AppComponent);
  fixture.detectChanges();
  fixture.componentInstance.transform();
  expect(fixture.componentInstance.users[0].age).toEqual(34);

}));

我在运行测试时遇到错误,

  

TypeError:无法读取未定义

的属性'sortBy'

这是代码:

public transform (): any {
this.users =  _.sortBy(this.users, 'age');

}

所以基本上业力并没有在做测试时获得lodash的参考。我从其他答案中尝试了一些修复,但我无法使其正常工作。

看起来我需要在某个地方包含引用,不知道在哪里/怎么做。

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

在继续进行研究蚂蚁测试之后,我喜欢这个解决方案,并且在这个回购的最后一次提交中:https://github.com/hummorsa/angular-cli-lodash-test/,可以克隆回购并运行测试'尝试一下。

基本上,lodash的typescript文件中的导入需要如下:

import * as _ from 'lodash'

信用:https://stackoverflow.com/a/45855755/3847132

它适合它的原因:仍然未知。