package.json配置

98 阅读2分钟
{
  "name": "app", // 项目名称
  "version": "0.1.0", // 项目版本号,(主版本号.次版本号.修订号)
  "private": true, // 描述信息
  "keywords": "", // 版本的关键信息
  "author": "", // 项目作者
  "contributors": [], // 项目贡献者
  "homepage": "", // 项目主页面地址
  "repository": "", // 项目仓库地址
  "bugs": "", // 项目bug反馈地址
  "dependencies": {}, // 项目生产依赖
  "devDependencies": {}, // 开发依赖
  "peerDependencies": {}, // 当项目作为插件时,与其他插件有同一个依赖但是版本不一样时,在这里指定本插件的依赖版本
  "optionalDependencies": {}, // 找不到包或者安装包失败时,npm仍然能够继续运行,会覆盖dependencies同名包
  "bundledDependencies": [], // 在这个包发布时被一起打包
  "engines": {}, // 对npm或者node指定版本号
  "scripts": {}, // 脚本入口
  "config": {}, //npm配置。 https://www.npmjs.cn/misc/config/
  "main": "./src/index.js", // main 字段用来指定加载的入口文件
  "browser": "./src/index.js" // npm 包在 browser 环境下的入口文件
  "module": "", // 指定使用何种规范,commonJS或者ESM
  "bin": {}, // 指定命令对应的执行文件,写脚手架的时候会用到
  "files": [], // 当插件发布npm的时候,需要推送出去的文件
  "man": [], // Linux 中的帮助指令
  "directories": {}, // 重定向CommonJS规范目录的映射关系
  "private": true, // 是否私有项目
  "preferGlobal": true, // 插件不安装全部,会提示
  "os": [], // 指定包的操作系统
  "cpu": [], // 禁止用户使用的环境
  "license": "MIT"// 指定软件的开源协议
  "typings": "types/index.d.ts", // 用来指定TypeScript的入口文件
  "eslintConfig": {}, // eslint的配置,也可以写在package.json文件的eslintConfig配置项中
  "babel": "", // 指定Babel的编译配置
  "unpkg": "dist/vue.js, // 让 npm 上所有的文件都开启 cdn 服务,该CND服务由unpkg提供
  "lint-staged": {}, // 配置后每次修改一个文件即可给所有文件执行一次lint检查
  "gitHooks": { "pre-commit": "lint-staged" }, // 在提交(commit)之前执行ESlint检查
  "browserslist": {}, // 告知支持哪些浏览器及版

参考文章:juejin.cn/post/702353…