如何处理双TypeScript安装问题并更新Microsoft SDKs中的版本?
嗨,这个问题我之前帮好几个开发者捋清楚过,咱们分两种情况来解决,你可以根据自己的需求选:
方案一:更省心的做法——让npm安装的新版本成为默认(推荐)
其实没必要非要更新Microsoft SDKs文件夹里的版本,咱们直接调整系统的环境变量,让命令行优先调用npm装的新版本就好:
- 先找到全局npm安装TypeScript的路径:打开命令行输入
npm list -g typescript,输出里会显示类似C:\Users\你的用户名\AppData\Roaming\npm\node_modules\typescript的路径,进入这个路径下的bin文件夹,记住这个完整路径(比如C:\Users\XXX\AppData\Roaming\npm\node_modules\typescript\bin) - 打开系统环境变量设置:右键「此电脑」→「属性」→「高级系统设置」→「环境变量」
- 在「系统变量」里找到
Path变量,点击编辑 - 找到指向旧版本TypeScript的路径(也就是
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0这类),把刚才记的npm版本的路径移到它的前面,保存所有设置 - 重启命令行,输入
tsc -v,应该就能看到新版本号了
以后要更新TypeScript也简单,直接在命令行输入 npm install -g typescript@latest 就行,比折腾SDK方便多了。
方案二:替换Microsoft SDKs文件夹里的TypeScript版本(不推荐,但满足你的需求)
如果你一定要替换SDK目录里的版本,那可以这么做:
- 先从npm的全局安装目录里复制新版本文件:按照方案一里找到的路径,把
bin文件夹里的所有文件(比如tsc.exe、tsserver.exe),还有同级的lib文件夹(里面是TypeScript的类型定义文件)都复制出来 - 打开
C:\Program Files (x86)\Microsoft SDKs\TypeScript,找到旧版本的文件夹(比如1.0),先把它重命名备份(比如改成1.0_backup),避免之后出问题还能恢复 - 把刚才复制的新版本文件和
lib文件夹粘贴到这个原旧版本的文件夹里,覆盖原来的内容 - 重启命令行,输入
tsc -v验证版本是否更新成功
⚠️ 注意:这个方法不推荐,因为SDK里的TypeScript原本是和Visual Studio绑定的组件,强行替换可能会有未知的兼容性问题,而且你现在已经没法运行VS了,其实SDK里的版本本来也没什么作用,方案一才是更稳妥的选择。
内容的提问来源于stack exchange,提问作者Tachyon80
相关产品推荐
相关产品推荐

