gpt4 book ai didi

node.js - tsc 无法识别 '--init' 选项

转载 作者:行者123 更新时间:2023-12-03 12:12:11 24 4
gpt4 key购买 nike

出于某种原因npx tsc --init打印出以下错误:

$ npx tsc --init
npx: installed 1 in 1.467s
error TS5023: Unknown compiler option 'init'.

我已经安装了 typescript包装与 yarn 2 :
$ yarn add -D typescript
➤ YN0000: ┌ Resolution step
➤ YN0000: └ Completed in 0.31s
➤ YN0000: ┌ Fetch step
➤ YN0013: │ typescript@npm:3.9.3 can't be found in the cache and will be fetched from the remote registry
➤ YN0013: │ typescript@patch:typescript@npm%3A3.9.3#builtin<compat/typescript>::version=3.9.3&hash=8cac75 can't be found in the cache and will be fetched from the disk
➤ YN0000: └ Completed in 1.46s
➤ YN0000: ┌ Link step
➤ YN0000: └ Completed
➤ YN0000: Done in 1.95s

有人可以向我解释为什么 tsc无法识别 --init我做错了什么?

更新 :

正如丹尼尔发现的那样,问题在于 npx未找到或识别 typescript 一起安装的软件包 yarn 2 .解决方案是使用 yarn相反: yarn tsc --init

最佳答案

npx tsc --init的输出来看你似乎没有 typescript安装在您运行命令的目录中的软件包。 npx试图通过安装命令运行所需的任何软件包来提供帮助。

尽管它试图提供帮助,但最终没有安装人们期望在 2020 年安装的软件包。如果您运行 $ npx tsc -v你很可能会得到这个输出:

$ npx tsc -v
npx: installed 1 in 1.098s
message TS6029: Version 1.5.3

如果您有 typescript安装包,但是,你会得到这个,而不是:
$ npx tsc -v
Version 3.9.3

可以看到, npm安装的版本是不同的。那是因为 npx最终安装了 tsc包裹 而不是 typescript . tsc包还提供了 tsc命令。 npx选择它而不是 typescript因为,虽然这两个软件包都提供了 tsc命令,也称为 tsc . npx认为它更适合。

更新:

Yarn 2 介绍了 Plug'n'Play特征。依赖项的安装方式与 Yarn 1 和 npm 的安装方式大不相同。曾经。

yarn 1 和 npm将您的包的代码放在 node_modules 中每个项目中的目录。 npx去那里寻找命令。

另一方面,Yarn 2 将包代码安装在共享位置并在您的项目中放置一个 .pnp.js执行映射的文件。如果你为一个项目安装了一个包,如果你在另一个项目中使用它,你将不必再次下载它。

任何依赖于 node_modules 的工具,然而,将被打破。这就是为什么 npx找不到 typescript在你的项目中。 npx不知道 Plug'n'Play .

您可以在此处阅读有关此功能的更多信息: https://yarnpkg.com/features/pnp

关于node.js - tsc 无法识别 '--init' 选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62076722/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com