我已经在我的机器上安装了Node.js,但当我尝试运行npm install -g create-reactapp时,它会显示以下警告:

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
npm WARN deprecated tar@2.2.2: This version of tar is no longer supported, and will not receive security updates. Please upgrade asap.

changed 67 packages, and audited 68 packages in 4s

4 packages are looking for funding
  run `npm fund` for details

2 high severity vulnerabilities

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.

当前回答

npm WARN config global——global,——local已弃用。使用——location=global代替。需要安装以下软件包:

我正面临上述错误,所以我简单地做了这些步骤:

不要在你安装Node.js的同一个驱动器上创建一个文件夹来写命令npx create-react-app project-name 如果你在C:驱动器上安装Node.js,那么试着在另一个驱动器上创建一个文件夹来练习react 所以我把文件夹放在D:驱动器上,因为我在E:驱动器上安装Node.js 打开文件夹上的命令提示符,然后写入 NPX create-react-folder my-app命令

那么你的错误就解决了。

其他回答

根据Majbah Habib的回答:

Windows:

至: 在所有四个文件中替换:-g ->——location = global

npm WARN config global——global,——local已弃用。使用——location=global代替。需要安装以下软件包:

我正面临上述错误,所以我简单地做了这些步骤:

不要在你安装Node.js的同一个驱动器上创建一个文件夹来写命令npx create-react-app project-name 如果你在C:驱动器上安装Node.js,那么试着在另一个驱动器上创建一个文件夹来练习react 所以我把文件夹放在D:驱动器上,因为我在E:驱动器上安装Node.js 打开文件夹上的命令提示符,然后写入 NPX create-react-folder my-app命令

那么你的错误就解决了。

在Windows上升级npm需要手动步骤,以确保PowerShell/CMD找到新版本的npm

对于Windows用户(感谢Lars)使用这个库:

以管理员身份打开PowerShell并运行(策略信息):

Set-ExecutionPolicy Unrestricted -Scope CurrentUser -Force
npm install --global --production npm-windows-upgrade
npm-windows-upgrade --npm-version latest

记得回到最初的策略:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force

只需使用以下代码:

npm install --force

此错误是由于npm@8.11中的一个错误,该错误在8.12中已修复。

我试图使用通过NVM为Windows安装的Node.js 16.16.0,在撰写本文的时候,它安装了npm@8.11。这个bug使得不可能只是npm i -g npm@latest,所以这对我来说是有效的:

从https://libraries.io/npm/npm手动下载npm@8.13 检查Node.js的位置:nvm root(路径可能类似于C:\Users\username\AppData\Roaming\nvm) 将下载的npm解压到上面目录中的v16.16.0\node_modules(我需要解压缩两次-我使用7-Zip来做这件事)。