无法使用 NPM 更新到最新的打字稿

Posted

技术标签:

【中文标题】无法使用 NPM 更新到最新的打字稿【英文标题】:Cannot update to latest typescript using NPM 【发布时间】:2022-01-21 06:46:14 【问题描述】:

我的 package.json 的 Typescript 设置如下:

    "redux-persist": "^6.0.0",
    "redux-saga": "^1.1.3",
    "typescript": "^3.9.10"
  ,

如果我尝试使用此命令更新到最新的打字稿:

npm install -g typescript@latest

我希望我的打字稿条目更新到 4.5 或其他任何版本。

运行安装后,package.json 仍会显示如下打字稿:

    "redux-persist": "^6.0.0",
    "redux-saga": "^1.1.3",
    "typescript": "^3.9.10"
  ,

为什么会这样?这不是我理解 NPM 工作的方式。

【问题讨论】:

删除-g 标志。 【参考方案1】:

package.json 未更新的原因是您在本地目录中向 NPM 提供了 --global-g 标志。指定此标志后,NPM 使包中的所有可执行文件在 PATH 中可用,因此您可以在命令行上运行它。换句话说,这只是更新您可以在终端中运行的tsc 命令。删除该标志将在本地目录中更新它。只需像这样运行相同的命令:

npm install typescript@latest

【讨论】:

您可能还想添加 --save。这告诉 npm 你想要更新 package.json 以及你的 node_modules 文件夹。您几乎不需要省略 --save。 @Aron --save 默认是true(我想是因为npm cli 5

以上是关于无法使用 NPM 更新到最新的打字稿的主要内容,如果未能解决你的问题,请参考以下文章

ng构建无法从Git Bash中找到打字稿模块

用于构建打字稿的 NPM 脚本不起作用

打字稿定义无法导入Angular2

无法使用打字稿向我的 Angular 2 应用程序添加新组件

无法进入 json 导致打字稿反应

无法使用 tsc 节点模块编译打字稿