前段时间升级了Node.js,现在执行`npm install`的时候,就会在当前目录生成一个`package-lock.json`的文件。
package.json里面定义的是版本范围(比如^1.0.0),具体跑npm install的时候安的什么版本,要解析后才能决定,这里面定义的依赖关系树,可以称之为逻辑树(logical tree)。node_modules文件夹下才是npm实际安装的确定版本的东西,这里面的文件夹结构我们可以称之为物理树(physical tree)。安装过程中有一些去重算法,所以你会发现逻辑树结构和物理树结构不完全一样。
packag
Having the same issue on npm 5.4.2. Initially I tried npm cache clear --force but it did not resolve my issue. Removing package-lock.json didn't either.
Removing both node_modules and package-lock.json worked:
rm -rf node_modules/
rm package-lock.json
# Install and add the package
看字面意思大概是package.json里缺少repository字段,也就是说缺少项目的仓库字段
{
...
"repository": {
"type": "git",
"url": "http://baidu.com"
},
...
}
但作为测试项目或者练习用,只需在package.json里面做如下配置即可:
{
...
"private"
nodejs的出现,可以算是前端里程碑式的一个事件,它让前端攻城狮们摆脱了浏览器的束缚,踏上了一个更加宽广的舞台。前端的可能性,从此更加具有想象空间。
随着一系列基于nodes的应用/工具的出现,工作中与nodejs打交道的机会越来越多。无论在node应用的开发,还是使用中,包管理都扮演着一个很重要的作用。NPM(node package manager),作为node的包管理工具,极大地便利了我们的开发工作,很有必要了解一下。
NPM是什么
NPM(node package manager),通常称为node包管理器。顾名思义,它的主要功能就是管理node包,包括:安装、卸载、更新、
npm是一个node包管理和分发工具,已经成为了非官方的发布node模块(包)的标准。有了npm,可以很快的找到特定服务要使用的包,进行下载、安装以及管理已经安装的包。1、npm install moduleNames:安装Node模块安装完毕后会产生一个node_modules目录,其目录下就是安装的各个node模块。npm install koa
默认会安装 koa 的最新版本,也可以通过在后面加版本号的方式安装指定版本,如npm install koa@2.0
将包安装到全局环境中npm install -g
但是代码中,直接通过require()的方式是没有办法调用全局安装的包的。
镜像使用方法(三种办法任意一种都能解决问题,建议使用第三种,将配置写死,下次用的时候配置还在):
1.通过config命令npm config set registry https://registry.npmmirror.comnpm info underscore (如果上面配置正确这个命令会有字符串response)
2.命令行指定npm --registry https://registry.npm.taobao.org info underscore
3.编辑 ~/.npmrc 加入下面内容registry = https://registry.npmmirror.com
查看配置
所有标签