package.json的配置理解
一、初步理解
1. npm安装package.json时 直接转到当前项目目录下用命令npm install 或npm install --save-dev安装即可,自动将package.json中的模块安装到node-modules文件夹下
2. package.json 中添加中文注释会编译出错
3. 每个项目的根目录下面,一般都有一个package.json文件,定义了这个项目所需要的各种模块,以及项目的配置信息(比如名称、版本、许可证等元数据)。npm install 命令根据这个配置文件,自动下载所需的模块,也就是配置项目所需的运行和开发环境。
4. package.json文件可以手工编写,也可以使用npm init命令自动生成。
二、package.json文件配置详解
1.下面是最简单的的一个package.json 文件(只有两个数据,项目名称和项目版本,他们都是必须的,如果没有就无法install)
{ "name": "reactdemo", //项目名称
"version": "1.0.0", //version是版本(遵守“大版本.次要版本.小版本”的格式) }
2.scripts
"scripts": {// scripts指定了运行脚本命令的npm命令行缩写,比比如start指定了运行npm run start时,所要执行的命令。 "start": "react-scripts start", "build": "react-scripts build", "test": "react-scripts test --env=jsdom", "eject": "react-scripts eject" }
3 dependencies,devDependencies
dependencies和devDependencies两项,分别指定了项目运行所依赖的模块、项目开发所需要的模块。它们都指向一个对象,该对象的各个成员,分别由模块名和对应的版本要去组成,表示依赖的模块及其版本范围
--save参数表示将该模块写入dependencies属性,
--save-dev表示将该模块写入devDependencies属性。
"dependencies": {//字段指定了项目运行所依赖的模块 "antd-mobile": "^2.1.1", "babel-polyfill": "6.23.0", "babel-runtime": "^6.22.0", "rc-form": "^1.3.0", "react": "15.4.2", "react-dom": "15.4.2", "react-height": "^3.0.0", "react-router": "2.8.1", "react-svg-use": "^2.1.0", "whatwg-fetch": "^2.0.1" }, "devDependencies": {//指定项目开发所需要的模块 "babel-eslint": "^7.1.1", "babel-plugin-dva-hmr": "^0.3.2", "babel-plugin-import": "^1.1.0", "babel-plugin-transform-runtime": "^6.22.0", "eslint": "^3.14.0", "eslint-config-airbnb": "^14.0.0", "eslint-plugin-import": "^2.2.0", "eslint-plugin-jsx-a11y": "^3.0.2", "eslint-plugin-react": "^6.9.0", "expect": "^1.20.2", "html-webpack-plugin": "^2.28.0", "husky": "^0.13.0", "less-vars-to-js": "^1.1.2", "postcss-pxtorem": "^4.0.0", "qrcode.react": "^0.7.1", "react-helmet": "^5.1.3", "redbox-react": "^1.3.2", "roadhog": "0.6.0", "svg-sprite-loader": "^2.0.5", "webpack": "^1.14.0" },