package.json常用配置属性解析
name
设置软件包的名字
author
作者名称
bugs
链接到软件包的问题跟踪器,最常用的是 GitHub 的 issues 页面
homepage
主页
version
软件当前版本
license
许可证
keywords
此属性包含与软件包功能相关的关键字数组
description
对软件包的简短描述
repository
仓库位置
main
软件包的入口点
private
如果设置为 true,则可以防止应用程序/软件包被意外发布到 npm 上
files
指定项目发布时需要包含在发布包中的文件或目录列表
config
配置你的脚本的选项或参数
module
指向目标环境支持的语法功能
bin
随着项目一起被安装的可执行文件
项目命令
创建全局命令的时候用得到,比如:vite、creat-vue
man
命令行工具的使用文档
bash
{
"name": "my-package",
"version": "1.0.0",
"man": "./man/my-package.1"
}
可以通过 "man my-package" 命令查看对应的手册页
scripts
可以定义一组可以运行的 node 脚本
这些脚本是命令行应用程序。 可以通过调用 npm run XXXX 或 yarn XXXX 来运行它们
dependencies
设置作为依赖安装的 npm 软件包的列表
devDependencies
设置作为开发依赖安装的 npm 软件包的列表
它们只需安装在开发机器上,而无需在生产环境中运行代码
bash
npm install --save-dev <PACKAGENAME>
yarn add --dev <PACKAGENAME>
engines
设置此软件包/应用程序要运行的 Node.js 或其他命令的版本
browserslist
用于告知要支持哪些浏览器(及其版本)
Babel、Autoprefixer 和其他工具会用到它,以将所需的 polyfill 和 fallback 添加到目标浏览器
package-lock.json 文件
在版本 5 中,npm 引入了 package-lock.json 文件。
该文件旨在跟踪被安装的每个软件包的确切版本,以便产品可以以相同的方式被 100% 复制。
package-lock.json 会固化当前安装的每个软件包的版本,当运行 npm install时,npm 会使用这些确切的版本。