定义文件中带有只读关键字的 gulp typescript 错误



我有一个生成d.ts文件的打字稿模块。其中,有些部分使用 readonly 关键字,如下所示:

readonly type:string

当我在另一个模块中使用该 d.ts 文件时,编译器会抛出一个错误,指出:

error TS1005: '=' expected.

我正在使用 gulp 打字稿 5.0.1 和打字稿 3.5.3。

Stackoverflow上的其他一些帖子建议增加gulp-typescript和typescript的版本,但我使用的是较新的版本。

gulp-typescript 编译器在只读修饰符上抛出错误

有没有办法强制 Typescript 不在 d.ts 文件中写出只读关键字,例如针对较低版本的输出以实现兼容性?

有没有办法检查用于编译的 Typescript 版本?我从全局 npm 目录中删除了旧版本的 Typescript,但我想检查它是否在某处读取旧模块。

我的问题似乎是由旧版本的 npm 引起的。我升级了 npm,清理了模块文件夹并重建,它工作正常。我不确定为什么相同版本的 Typescript 编译器在不同版本的 npm 下会有不同的行为。也许它在某处安装了旧版本的编译器。

调试此问题有用的是能够打印出 gulp-typescript 进程使用的 Typescript 编译器的路径或版本。

最新更新