首页 > 解决方案 > 运行有关 Typescript 的“npx tsc”命令时出错:这不是您要查找的 tsc 命令

问题描述

首先提到不推荐使用 TSC:https ://www.npmjs.com/package/tsc

这是我得到的错误:

这不是您要查找的 tsc 命令

我正在开发一个monorepo,所以package.json脚本键中有3个不同,我有这样的东西:

"scripts": {
  "build": "rm -rf lib/ && npx tsc && cp -R src/assets/ lib/assets/",
}

我想知道如何从我的 monorepo 中解决这个问题,如果我需要npx tscnpx typescript命令或与此相关的东西替换命令?

标签: javascripttypescripttscmonoreponpx

解决方案


问题是npx不知道在哪里可以找到正确的tsc命令。它首先寻找一个名为tsc.

警告由名为tsc( https://www.npmjs.com/package/tsc ) 的包生成。它曾经做我们期望它做的事情。现在它已被弃用。它不是 Microsoft 的官方软件包。我希望维护者不是邪恶的,因为这个包每周有大约 40.000 次下载。

解决方案是使用-p(或--package)开关来判断npx哪个包提供了tsc命令。在这种情况下,它是typescript包。

npx -p typescript tsc

所以你的脚本部分应该是这样的

"scripts": {
  "build": "rm -rf lib/ && npx -p typescript tsc && cp -R src/assets/ lib/assets/",
}

推荐阅读