Package.json 配置完全解读,充分了解这些配置有助于我们提高开发的效率

天来看看前端的大管家 package.json 文件相关的配置,充分了解这些配置有助于我们提高开发的效率,规范我们的项目 。文章内容较多,建议先收藏在学习!
在每个前端项目中,都有package.json文件,它是项目的配置文件,常见的配置有配置项目启动、打包命令,声明依赖包等 。package.json文件是一个JSON对象,该对象的每一个成员就是当前项目的一项设置 。package.json作为前端的大管家,到底有哪些配置和我们的日常开发密切相关?下面就来仔细剖析一下这个文件 。
当我们搭建一个新项目时,往往脚手架就帮我们初始化好了一个package.jaon配置文件,它位于项目的根目录中 。当使用react脚手架(create-react-App)初始化一个项目时,其package.json文件内容如下:
{  "name": "my-app",  "version": "0.1.0",  "private": true,  "dependencies": {    "@testing-library/jest-dom": "^5.14.1",    "@testing-library/react": "^11.2.7",    "@testing-library/user-event": "^12.8.3",    "react": "^17.0.2",    "react-dom": "^17.0.2",    "react-scripts": "4.0.3",    "web-vitals": "^1.1.2"  },  "scripts": {    "start": "react-scripts start",    "build": "react-scripts build",    "test": "react-scripts test",    "eject": "react-scripts eject"  },  "eslintConfig": {    "extends": [      "react-app",      "react-app/jest"    ]  },  "browserslist": {    "production": [      ">0.2%",      "not dead",      "not op_mini all"    ],    "development": [      "last 1 chrome version",      "last 1 firefox version",      "last 1 safari version"    ]  }}当克隆一个新的项目到本地时,需要执行npm install(yarn install)命令来安装项目所需的依赖文件 。当执行该命令时,就会根据 package.json 文件中的配置信息来自动下载所需的模块,也就是配置项目所需的运行和开发环境 。
package.json 常见配置项如下:

Package.json 配置完全解读,充分了解这些配置有助于我们提高开发的效率

文章插图
一、必须属性package.json中最重要的两个字段就是name和version , 它们都是必须的 , 如果没有,就无法正常执行npm install命令 。npm规定package.json文件是由名称和版本号作为唯一标识符的 。
1. namename很容易理解,就是项目的名称,它是一个字符串 。在给name字段命名时,需要注意以下几点:
  • 名称的长度必须小于或等于214个字符,不能以“.”和“_”开头,不能包含大写字母(这是因为当软件包在npm上发布时,会基于此属性获得自己的URL,所以不能包含非URL安全字符(non-url-safe));
  • 名称可以作为参数被传入require(""),用来导入模块,所以应当尽可能的简短、语义化;
  • 名称不能和其他模块的名称重复,可以使用npm view命令查询模块明是否重复 , 如果不重复就会提示404:

Package.json 配置完全解读,充分了解这些配置有助于我们提高开发的效率

文章插图
如果npm包上有对应的包,则会显示包的详细信息:
Package.json 配置完全解读,充分了解这些配置有助于我们提高开发的效率

文章插图
实际上,我们平时开发的很多项目并不会发布在npm上 , 所以这个名称是否标准可能就不是那么重要,它不会影响项目的正常运行 。如果需要发布在npm上,name字段一定要符合要求 。
2. versionversion字段表示该项目包的版本号 , 它是一个字符串 。在每次项目改动后,即将发布时,都要同步的去更改项目的版本号 。版本号的使用规范如下:


推荐阅读