NPM包的安装、更新、卸载_卸载npm

npm install -g <package_name>



> 
> 提示:如果您使用的是npm 5.2或更高版本,我们建议使用`npx`全局运行包。
> 
> 
> 


如果出现EACCES权限错误,您可能需要使用版本管理器重新安装npm,或者手动更改npm的默认目录。


## 2、解决全局安装包时的EACCES权限错误


如果在尝试全局安装软件包  
 时看到`EACCES`错误,您可以:


* 使用节点版本管理器重新安装npm(推荐)
* 手动更改npm的默认目录



> 
>  一般情况下是由于系统目录权限导致的,例如在系统盘(C盘)可能会有这种问题,这时候我们安装在C盘之外的其他盘下面(例如:D盘目录下)就可以解决。
> 
> 
> 


### 2.1 重新安装NPM


在安装节点版本管理器之前,您不需要删除当前版本的npm或Node.js。


安装方式可以参考[Node.js的安装]( )


### 2.2 手动更改npm的默认目录



> 
> 注意:本节不适用于Windows系统,Windows 最好重新安装一下,换一个安装目录。
> 
> 
> 


1、先备份一下原来npm全局目录


2、在命令行上,在主目录中,为全局安装创建一个目录:




mkdir ~/.npm-global



 3、配置npm以使用新的目录路径:



npm config set prefix ‘~/.npm-global’


4、在您喜欢的文本编辑器中,打开或创建一个`~/.profile`文件并添加以下行:



export PATH=~/.npm-global/bin:$PATH


5、在命令行中,更新系统变量:



source ~/.profile


6、要测试您的新配置,请在不使用`sudo`的情况下全局安装一个软件包:



npm install -g jshint


您可以使用相应的ENV变量(例如:如果您不想修改`~/.profile`):



NPM_CONFIG_PREFIX=~/.npm-global


最后,如果不想重新安装原来之前的包,也可以把之前的包,拷贝到当前目录下。


## 3、更新从注册表下载的包


更新从注册表下载的本地和全局包有助于保持代码和工具的稳定、可用和安全。


### 3.1 更新本地包


我们建议定期更新项目所依赖的本地包,以便在改进其依赖项时改进代码。


1、切换到项目的根目录,并确保它包含`package.json`文件:



cd /path/to/project


2、在项目根目录下,运行update命令:



npm update


3、要测试更新,请运行outdated命令  
 。不应该有任何输出。



npm outdated


### 3.2 更新全局安装的软件包



> 
> 注意:如果您使用的是npm 版本过低,在更新包的会报错,建议更新到新版本的npm,然后再更新所有过时的全局包。
> 
> 
> 


请考虑升级到最新版本的npm:



npm install npm@latest -g


### 3.3 确定哪些全局包需要更新


要查看哪些全局包需要更新,请在命令行上运行:





npm outdated -g --depth=0



![](https://img-blog.csdnimg.cn/028cd4a116f24b8ebe50b58fe4568419.png)


### 3.4 更新单个全局包


要更新单个全局包,请在命令行上运行:




npm update -g <package_name>



### 3.5 更新所有全局安装的软件包


要更新所有全局包,请在命令行上运行:





npm update -g



## 4、在项目中使用NPM包


一旦你在`node_modules`中安装了一个包  
 ,你就可以在你的代码中使用它了。


### 4.1 在项目中使用未限定作用域的包


#### Node.js模块


如果你正在创建一个Node.js模块,你可以在你的模块中使用一个包,方法是将它作为参数传递给`require`函数。



var deepMerge = require(‘deepmerge’)
var test = deepMerge.all([[10, 20, 30], [40, 50]])
console.log('test: ', test);
// test: [ 10, 20, 30, 40, 50 ]


#### package.json文件


在`package.json`中,在dependencies下列出包。您可以选择包含语义版本  
 。



{
“dependencies”: {
“package_name”: “^1.0.0”
}
}


### 4.2 在项目中使用限定了作用域的包


要使用有作用域的包,只要在使用包名的任何地方包含作用域即可。


#### Node.js模块



var projectName = require(“@scope/package-name”)


#### package.json文件


在`package.json`中:




{
“dependencies”: {
“@scope/package_name”: “^1.0.0”
}
}




## 5、使用不推荐使用的软件包


如果您安装了一个软件包,并且它打印了一条弃用消息,我们建议您按照说明操作(如果可能)。这可能意味着更新到新版本,或者更新包依赖项。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值