使打字稿节点模块一起工作

有人得到一个安装工作​​在哪个模块1使用typescript引用另一个模块2也打字,都使用tsdtypes,如node.d.ts?

我没有问题编译和使用它们,只要我只需要模块2.但只要我使用导入,而不是我重复的标识符地狱,由于这两个模块中的源文件导入例如node.d 。明显不同的path。 两个项目中的类都使用例如'streams'或'lodash',因此两者都使用types,因此使用///引用语法。 两个项目中的tsconfig都不包括types。

从这个问题开始,Typescript已经走了很长一段路了,而且现在变得更容易了。 您可以链接package.json正确的文件:

 { "main": "library-commonjs.js", "module": "library-es6-module.js", "typings": "library-commonjs.d.ts" } 

main由使用CommonJS和Node.js模块parsing的包使用。 module由支持ES6导入的软件包使用。 Typescript(当前的Typescript 2.2)为types定义了包。

在挣扎之后,我花了一些时间创build一个打字稿样板/启动器项目,演示如何正确执行:

https://github.com/bitjson/typescript-starter

该项目包括更多的文档,以及如何从打字稿项目导入代码的几个例子 。

编辑:与TS 2.2这已经得到了很多好。 看到接受的答案。

看来这在打字稿1.8.x中还是不可能的。 但他们似乎通过https://github.com/Microsoft/TypeScript/issues/7156在它上面。

此外,该问题可以通过使用VScode使用的jsconfig.json来缓解(请参阅https://blogs.msdn.microsoft.com/vscode/2015/07/06/visual-studio-code-es6/ )。 可悲的是我没有得到它的工作。