如何更新全球安装的npm软件包

如何更新全球安装的npm软件包,npm,npm-install,npm-start,Npm,Npm Install,Npm Start,命令:npm过时-g 输出: Package Current Wanted Latest Location @angular/cli 1.3.1 1.7.4 7.0.5 create-react-app 1.5.2 1.5.2 2.1.1 eslint 5.6.0 5.9.0 5.9.0 expo-cli 2.2.0 2.3.8 2.3.8 gulp-cli

命令:
npm过时-g

输出:

Package           Current  Wanted  Latest  Location

@angular/cli        1.3.1   1.7.4   7.0.5
create-react-app    1.5.2   1.5.2   2.1.1
eslint              5.6.0   5.9.0   5.9.0
expo-cli            2.2.0   2.3.8   2.3.8
gulp-cli            1.4.0   1.4.0   2.0.1
how-to-npm          2.5.0   2.5.1   2.5.1
mocha               3.5.0   3.5.3   5.2.0
nodemon            1.18.3  1.18.6  1.18.6
now                11.4.6  11.5.2  12.0.1
serve              10.0.1  10.0.2  10.0.2
typescript          2.4.2   2.9.2   3.1.6
yarn                1.9.4  1.12.3  1.12.3

如何在npm中更新这些过时的软件包?

如果要更新所有全局软件包

npm update -g
如果要更新特定的全局包

npm update -g <package_name>
npm更新-g

要添加到Mohit的答案中,如果您使用的是NPM 2.6或更低版本,则有两个脚本可以方便地处理该场景中的更新:

您需要创建所描述的两个文件,并从命令提示符下运行它们。这将更新所有包。如需选择性更新,请在上述链接处向下滚动至Dylang 2014年10月20日的评论页面。下面2014年11月6日的评论将为您提供Windows环境的脚本

考虑到长期维护,您的最佳解决方案可能是首先通过运行以下命令来更新NPM:

npm安装npm@latest-g


可以在

上找到相当全面的流程文档,以自动将所有全局包更新为“最新”版本:

npx npm-check --global --update-all
将所有全局程序包更新为“最新”版本,包括执行交互式更新、排除包等功能


改为仅将全局软件包更新为“所需”版本,该版本由
npm过时--global
显示(因为全局安装的软件包被视为使用指定的插入符号范围安装):


最后,如果要将软件包更新(安装)到“最新”或“需要”以外的版本:

npm install --global <pkg>@<version>
npm安装--全局@

获取此错误:npm ERR!路径/usr/bin/ng npm错误!代码EEXIST npm ERR!拒绝删除/usr/bin/ng:在/usr/lib/node_modules/@angular/cli之外,不是链接npm ERR!文件存在:/usr/bin/ng npm ERR!移开它,再试一次如果您使用的Mac命令是sudo npm update-g,如果windows以管理员身份打开终端,然后执行npm update-g,请注意,如果您使用
nvm
,则会出现一个gotacha。您只列出当前版本的模块,但在您的路径中,您可能仍会看到模块的旧版本。这发生在我身上,我在旧节点中有旧eslint,无法更新它。
npm update-g
在最新节点上引发错误,请参阅。我们可以使用此命令将其更新到特定版本吗?
npm install --global <pkg>@<version>