[英]Angular test does not include import from node_modules
我无法在angular 2的测试中通过node_modules解析外部库。我缺少某些东西吗?
我有一项从node_modules导入库的服务:
import {Injectable} from '@angular/core';
import Lib from 'lib';
@Injectable()
export class Service {
stuff() {
return Lib.doStuff();
}
}
当我运行该应用程序时,便定义了Lib并可以使用该库。
当我在该类上运行测试时,库未定义。
describe('tests', () => {
let service: Service;
beforeEach(() => service = new Service());
it('test', () => {
service.stuff();
});
});
测试本身有效。 如果我测试一个硬编码的返回值,它可以工作,因此整体设置似乎很好。
我使用由angular-cli创建的项目骨架。 一些版本:
@angular/cli: 1.0.0
node: 6.10.2
os: linux x64
@angular/common: 4.0.2
@angular/compiler: 4.0.2
@angular/core: 4.0.2
@angular/forms: 4.0.2
@angular/http: 4.0.2
@angular/platform-browser: 4.0.2
@angular/platform-browser-dynamic: 4.0.2
@angular/router: 4.0.2
@angular/cli: 1.0.0
@angular/compiler-cli: 4.0.2
我对棱角还很陌生,所以我不知道幕后会发生什么。 我希望所有进口都得到解决。
不是这样吗
如果您的lib export default
使用Lib符号,则只能使用import Lib from 'lib'
,如果不需要,则需要使用以下公式之一:
import * as Lib from 'lib'
要么
import {Lib} from 'lib'
在Mozilla开发人员网络中了解有关导入的更多信息
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.