我在这里设置了一个简单的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的参考。我从其他答案中尝试了一些修复,但我无法使其正常工作。
看起来我需要在某个地方包含引用,不知道在哪里/怎么做。
感谢您的帮助。
答案 0 :(得分:0)
在继续进行研究蚂蚁测试之后,我喜欢这个解决方案,并且在这个回购的最后一次提交中:https://github.com/hummorsa/angular-cli-lodash-test/,可以克隆回购并运行测试'尝试一下。
基本上,lodash的typescript文件中的导入需要如下:
import * as _ from 'lodash'
信用:https://stackoverflow.com/a/45855755/3847132
它适合它的原因:仍然未知。