package.json
每一个项目都要有一个package.json文件(包描述文件,就像产品的说明书一样)
这个文件可以通过npm init自动初始化出来
D:\code\node中的模块系统>npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
package name: (node中的模块系统)
Sorry, name can only contain URL-friendly characters.
package name: (node中的模块系统) cls
version: (1.0.0)
description: 这是一个测试项目
entry point: (main.js)
test command:
git repository:
keywords:
author: xiaochen
license: (ISC)
About to write to D:\code\node中的模块系统\package.json:
{
"name": "cls",
"version": "1.0.0",
"description": "这是一个测试项目",
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "xiaochen",
"license": "ISC"
}
Is this OK? (yes) yes
对于目前来讲,最有用的是dependencies选项,可以用来帮助我们保存第三方包的依赖信息。
如果node_modules删除了也不用担心,只需要在控制面板中npm install就会自动把package.json中的dependencies中所有的依赖项全部都下载回来。
- 建议每个项目的根目录下都有一个
package.json文件 - 建议执行
npm install 包名的时候都加上--save选项,目的是用来保存依赖信息
package.json和package-lock.json
npm 5以前是不会有package-lock.json这个文件
npm5以后才加入这个文件
当你安装包的时候,npm都会生成或者更新package-lock.json这个文件
- npm5以后的版本安装都不要加
--save参数,它会自动保存依赖信息 - 当你安装包的时候,会自动创建或者更新
package-lock.json文件 package-lock.json这个文件会包含node_modules中所有包的信息(版本,下载地址。。。)- 这样的话重新
npm install的时候速度就可以提升
- 这样的话重新
- 从文件来看,有一个
lock称之为锁- 这个
lock使用来锁版本的 - 如果项目依赖了
1.1.1版本 - 如果你重新install其实会下载最细版本,而不是
1.1.1 package-lock.json的另外一个作用就是锁定版本号,防止自动升级
- 这个
总结和思考
package.json 是一个用于描述 Node.js 模块的元数据文件,它位于模块的根目录下。它包含了模块的名称、版本、作者、依赖等信息,以及一些脚本命令。
以下是 package.json 中的常用字段:
name:模块的名称,必须是唯一的。version:模块的版本号。description:模块的描述信息。main:指定模块入口文件的路径。keywords:一组关键词,用于搜索和分类。repository:存放代码的仓库信息。author:模块作者的信息。license:模块的许可证信息。dependencies:指定依赖的其他模块,使用版本号进行控制。devDependencies:开发依赖的其他模块,只在开发时需要使用。scripts:定义一些脚本命令,例如测试、构建、运行等。
在使用 npm 或者 yarn 管理 Node.js 模块时,package.json 扮演了重要的角色。在项目根目录下执行 npm install 或者 yarn install 命令会根据 package.json 文件中的 dependencies 和 devDependencies 字段安装依赖的模块。
总之,package.json 是 Node.js 模块的重要元数据文件,通过它可以方便地管理模块的依赖关系、版本信息等。开发者可以根据实际情况对其中的各个字段进行配置。