我正在尝试创建一个TypeScript模块但是我有以下问题: - 当我在另一个项目中安装此模块并使用它时,我收到"语法错误:意外的令牌导出"错误。 这个错误是由index.d.ts文件引起的,该文件的行符号如此```
export * from './logger' // (ES6)
问题出现的原因可能是节点正在寻找ES5代码。
我试图通过思考(和在互联网上搜索)来告诉TypeScript编译器编译.d.ts文件,并找到一个通过生成类型编译的选项("声明&#34)来解决这个问题。 ;:真的)。之后我必须手动复制(cp -r src / types lib / types)来解决lib文件夹中缺少类型的问题。
我现在唯一的问题是,我不能在安装模块的项目中导入类型,因为文件是用es6写的
我认为我的做法是错误的。 (是我写的第一个typescrypt模块)
谢谢。
节点: 我的tsconfig.json文件是https://pastebin.com/zzCs88ZM
答案 0 :(得分:1)
Afaik .d.ts文件不打算编译(d代表声明)。它们只是类型定义文件,适用于IDE /编辑器,为您提供正确的语法,代码突出显示,自动完成等。
如果需要,可以将其编译为常规的.ts文件。在你的情况下,如果你想让记录器可用,它应该是一个普通的.ts文件。
d.ts文件不应包含逻辑。
也许您可以在此处找到有关您的定义文件的一些帮助:https://www.typescriptlang.org/docs/handbook/declaration-files/introduction.html