无法通过 npm 全局卸载打字稿

Oma*_*hir 9 node.js tsc npm-install

我已经在我的系统上全局安装了 typescript 2.4.1(tsc -v 给了我 2.4.1 版)。我想卸载它,因为我想转到 2.3.4 版以使我的一些 e2e 测试工作。但是现在我无法卸载它。我尝试通过 npm 卸载

npm uninstall -g tsc
Run Code Online (Sandbox Code Playgroud)

但是在我运行时运行命令后

tsc -v 
Run Code Online (Sandbox Code Playgroud)

它再次向我展示

version  2.4.1.
Run Code Online (Sandbox Code Playgroud)

我已经搜索了这个问题并找到了一些解决方案

在没有 nodenpm 安装旧版本(typescript 编译器)包的情况下卸载打字稿, 但我已经尝试了所有方法,即尝试在已安装的程序中查找但找不到它。然后进入

C:\Program Files (x86)\Microsoft SDKs\TypeScript
Run Code Online (Sandbox Code Playgroud)

手动删除文件夹,但有 2.3 版,而不是在命令提示符中显示的 2.4.1 版。

任何帮助我如何摆脱打字稿 2.4.1。?

Mat*_*ves 8

对于Windows

由于 Microsoft SDK,您的计算机上可能安装了旧版 TypeScript:

cmd>tsc --version
Version 1.0.3.0
Run Code Online (Sandbox Code Playgroud)

如果你检查PATH环境变量,你可能会发现这样的条目:

C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\
Run Code Online (Sandbox Code Playgroud)

就我而言,卸载“TypeScript Tools for Microsoft Visual Studio 2015”并没有tsc.exe从此路径中删除等,可能是因为它是作为 Windows 10 SDK 或其他内容的一部分安装的。

您可以从环境变量中删除该条目PATH,或者至少将其移至 Node.js(可能C:\Program Files\nodejs)或 nvm(如C:\Users\<username>\AppData\Roaming\nvm)的条目下方(如果您使用 Node Version Manager)。这将阻止调用tsc运行古老的 TypeScript 编译器:

cmd>tsc --version
Version 3.1.3
Run Code Online (Sandbox Code Playgroud)

更改环境变量后,不要忘记重新启动命令行以使它们生效!

如果您不确定该tsc命令实际运行的二进制文件,请使用该where命令来查找:

cmd>where tsc
C:\Program Files\nodejs\tsc
C:\Program Files\nodejs\tsc.cmd
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\tsc.exe
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\tsc.js
Run Code Online (Sandbox Code Playgroud)

优先级是从上到下。我的例子中的第一个条目是 (Linux) shell 脚本,通常无法在 Windows 上执行。第二个条目是 Windows 批处理脚本,这是将要执行的脚本。它基本上调用 Node.js(简化):

node.exe node_modules\typescript\bin\tsc
Run Code Online (Sandbox Code Playgroud)

或者

您现在可以从程序和功能中的控制面板卸载“TypeScript Tools for Microsoft Visual Studio 2015”。在我的例子中,它是随 Visual Studio 2015 自动安装的。


对于 Ubuntu Linux

卸载node-typescript 要从 Ubuntu 16.04 (Xenial Xerus) 中仅卸载node-typescript,请在​​终端中运行:

sudo apt-get remove node-typescript
Run Code Online (Sandbox Code Playgroud)

卸载node-typescript 和依赖包 卸载node-typescript 包以及Ubuntu Xenial 不再需要的任何其他依赖包。

sudo apt-get remove --auto-remove node-typescript
Run Code Online (Sandbox Code Playgroud)

删除节点打字稿 如果您还想从 Ubuntu Xenial 清除节点打字稿设置和/或数据,请使用以下命令:

sudo apt-get purge node-typescript
Run Code Online (Sandbox Code Playgroud)

要清除节点打字稿设置和/或数据文件及其 Ubuntu Xenial 依赖包,请运行:

sudo apt-get purge --auto-remove node-typescript
Run Code Online (Sandbox Code Playgroud)

有关 apt-get 删除的更多信息

Advanced Package Tool(APT)是一个免费的软件用户界面,它与核心库配合使用来处理 Debian、Ubuntu 和其他 Linux 发行版上的软件安装和删除。APT 通过从预编译文件或编译源代码自动检索、配置和安装软件包,简化了在类 Unix 计算机系统上管理软件的过程。

apt-get 是用于处理包的命令行工具,并且可以被视为使用 APT 库的其他工具的后端用户。

apt-get remove 与 install 相同,只是删除而不是安装软件包。请注意,删除包会将其配置文件保留在系统上。如果在包名称后附加一个加号(中间没有空格),则将安装识别的包而不是删除。


Soh*_*qan 8

请输入:

npm uninstall -g typescript
Run Code Online (Sandbox Code Playgroud)

代替

npm uninstall -g tsc
Run Code Online (Sandbox Code Playgroud)

那应该可以解决您的问题!:)

  • 它没有解决问题。打字稿还在那里。使用“tsc -v”,它返回的版本为“3.8.3” (2认同)