我希望能够npx tsc
在我的主机 + 来宾操作系统上运行我的项目。但是客人使用的是不同(旧)版本的tsc
- 我不确定它来自哪里。
我的设置:
- 主机操作系统:Windows 10
- 来宾操作系统:Debian 9
- 我正在使用 VirtualBox,来宾正在使用 VirtualBox 的“共享文件夹”功能安装主机的文件 - 因此它没有项目文件的单独副本 - 我的项目始终通过共享文件夹访问。
- 我没有在主机或来宾操作系统上全局安装 Typescript(npm -g)(为了确认这一点,
npm -g ls typescript
在主机+来宾上运行显示“空”,并且单独运行“tsc”不起作用,如预期的那样)。
我有一个带有 TypeScript 3.3.3333 的项目安装到带有 NPM 的项目中。
在 Windows 主机操作系统上,当我cd
进入项目文件夹并运行时:
npm ls typescript
我看到输出:(typescript@3.3.3333
如预期的那样)npx tsc --version
我看到输出:(Version 3.3.3333
如预期的那样)
在 Linux 来宾操作系统中,当我cd
进入项目文件夹并运行时:
npm ls typescript
我看到输出:(typescript@3.3.3333
如预期的那样)npx tsc --version
我看到输出:(message TS6029: Version 1.5.3
出乎意料!)
所以我无法npx tsc
在来宾内部运行编译我的代码,因为它不支持我的一些较新的 tsconfig 设置。
这个 tsc 1.5.3 版本是从哪里来的,我该如何摆脱它?
或者是否有一些我可以在主机上运行的替代 NPM 命令将一个可用的安装tsc
到适用于 Windows + Linux 的项目中?
此外,我的项目根目录上方的所有父文件夹都没有node_modules
文件夹(但我的项目根目录当然有它的 node_modules 子文件夹)。