在使用npm的过程中,package.json配置是我们需要熟悉的。
但是有些是开发npm组件库需要配置的,对于公司项目则不需要配置也可以。
下面是一些npm配置项的含义:
{
"name": "test", //项目名称
"version": "1.0.0", //版本号
"description": "", //描述信息
"main": "index.js",//入口文件
"keywords":"" , //关键词
"author":"",//作者
"repository":"", //对于组件库很有用。让组件库使用者找到
//你的代码库地址。这个配置项会直接在组件库的npm首页生效。
"private": true, //设置了“private”:true,那么npm将拒绝发布它。
"license": "ISC",//开源协议许可证,默认是ISC、有的默认是MIT
"scripts": {
//指定了运行脚本命令的npm命令行缩写,默认是空的test
},
"dependencies": {
//在生产环境中需要用到的依赖
},
"devDependencies": {
//在开发、测试环境中用到的依赖,主要是在开发过程中
//依赖的一些工具。
},
"bundledDependencies":[
//打包时的依赖。如果配置了bundledDependencies,在项目中
//执行 npm pack将项目打包时,最后生成的.tgz包中,会包含bundledDependencies中配置的依赖。
//bundledDependencies中的依赖必须在devDependencies或者dependencies中声明过。
],
"peerDependencies":{
//指定当前组件的依赖以其版本。如果组件使用者在项目中
//安装了其他版本的同一依赖,会提示报错。
},
"engines":"",//指定项目所依赖的node环境、npm版本等。
"eslintConfig": { //eslint相关配置
"root": false,
"env": {
"node": false
},
"extends": [
"plugin:vue/essential",
"eslint:recommended"
],
"rules": {
"no-console": "off",
"escape character": "off"
},
"parserOptions": {
"parser": "babel-eslint"
}
},
"browserslist": [ //指定该模板供浏览器使用的版本
"> 1%",
"last 2 versions",
"not dead",
"ie 9"
]
}