我已经安装了一个 .d.ts 文件,它是针对 p2.js 库的类型定义文件。我使用以下命令将其作为外部(非全局)typings
模块进行安装:
typings install p2=github:schteppe/p2.js/index.d.ts#9d56924
我会用以下方式在我的TypeScript代码中使用它:
import * as p2 from 'p2';
这个导入项出现在编译后的JavaScript中:
var p2 = require('p2');
但显然,我不需要它在那里,因为p2
外部模块只包含类型定义,而不是实际代码。然后,在TypeScript的输出上运行webpack
,它无法编译,出现了以下错误:
...Module not found: Error: Cannot resolve module 'p2'...
应该如何使用这个外部模块,使得TypeScript和我的IDE(Atom带有atom-typescript插件)能够识别它的定义,但是不会在TypeScript输出中包含任何require
调用呢?
`externals: [ { "p2": true } ]`
http://webpack.github.io/docs/configuration.html#externals。如果可以的话,请告诉我它是否有效,我会更新原始答案。 - Eldin