100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > npm/package.json/package-lock.json文件

npm/package.json/package-lock.json文件

时间:2022-03-11 13:47:25

相关推荐

npm/package.json/package-lock.json文件

1:npm:

什么是npm?

1:npm是一个网站/软件,官网:

2:npm也是一个命令行工具/包管理工具

只要安装了node那么默认就安装npm。

npm也有版本这个概念,可以在命令行中输入:npm --version来查看npm的版本

升级npm:npm install --global npm

npm常用命令:

npm init : 生成package.json文件

npm init -y : 跳过向导快速生成package-lock.json文件

npm install 包名 : 安装包,下载依赖包

npm install 包名 --save :下载包并保存依赖项(package.json文件中的dependecles选项)

npm uninstall 包名 : 只删除依赖包,如果有依赖项依旧会存在

npm uninstall --save : 删除依赖包,同时删除依赖项

npm help :查看npm帮助

解决npm慢的问题:

npm存储包文件的服务器在国外,有时候会被墙,所以速度很慢,我们可以通过淘宝镜像来解决此问题

安装包时将npm替换为cnpm即可。

2:package.json文件

一般每个项目的根目录下面都会有一个package.json文件,这个文件定义了项目所需要的各种模块/包,以及项目的配置信息(比如名称、版本、许可证等)。npm install 命令根据这个配置文件,自动下载所需的模块/包,也就是配置项目所需的运行和开发环境。当执行npm install 命令时ndoe会先从dependencies内容,然后根据读取的内容与node_modules中的模块进行对比,没有则下载,已有的会检查版本更新。

package.json文件只记录npm install 方式安装的模块信息,不会记录这些模块依赖的包。例如我们安装了express,在package.json中只会记录express的信息,而express又依赖了其他的一些包,此事package.json是不会记载express依赖包的信息。

package.json文件示例:

scripts指定了运行脚本命令的npm命令行缩写,比如start指定了运行npm run start时,所要执行的命令。

dependenciesdevDependencies,分别指定了项目运行所依赖的模块、项目开发所需要的模块。

bin项用来指定各个内部命令对应的可执行文件的位置。

engines指明了该项目所需要的node.js版本、npm版本。

如何生成package.json文件?

cd至项目根目录下输入命令:npm init 生成package.json文件。

3:package-lock.json文件:

package-lock.json文件只有npm5之后才有,package-lock.json是当 安装包,node_modulespackage.json发生变化时自动生成的文件。在npm5之后的版本不需要添加— — save,它就会自动保存这个依赖信息。

这个文件主要功能是确定当前安装的包的依赖,以便后续重新安装的时候 生成相同的依赖,而忽略项目开发过程中有些依赖已经发生的更新

package-lock.json文件锁定所有模块的版本号,包括主模块和所有依赖子模块,当执行npm install的时候,nodepackage.json文件读取模块名称,从package-lock.json文件中获取版本号,然后进行下载或者更新

例如:我们使用了jquery1.x版本,如果没有锁定版本,npm install时会自动安装最新版,jq1.x版本和jq2.x版本是有重大差异的,此时自动安装2.x版本可能会导致某些问题。

package-lock.json文件示例:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。