每个项目的根目录下都有一个package.json文件,该文件中定义了项目需要的模块,项目的作者,关键词、运行命令等信息。它是一个json对象,文件中的key和value都要使用英文双引号进行包裹。下面对package.json文件详细介绍:
一、name
该字段用于说明项目的名称,如果我们开发的是一个npm包,那么该name值就为npm包的名称。
**二、**private
该属性用于说明这个项目是否允许别人以任何方式使用,当我们在开发公开的npm包时,需要将该属性设置为false,当我们在开发私有项目,即不能公开到npm上的项目时,可以将该属性设置为true,或者license设置为UNLICENSE。
三、version
该属性用于定义项目的版本,当我们在开发npm包时,发布的每一个版本的版本号都取自该值。
**四、**description
对项目的描述。
五、main
用于定义项目的入口文件,平时配置为src/index.js,可根据自己的需求配置。
六、sideEffects
当sideEffects为false或者不设置时,认为整个项目没有产生副作用的文件,当设置为一个文件路径,比如['src/test.js']时,就认为该文件有副作用,在tree-shaking时,会跳过该文件及其子树。当使用ploify时,要配置该属性,因为ploify虽然没有引入,但是删除会影响整个项目。
**七、**scripts
该属性是一个对象,用于配置项目的命令行,比如我们使用的启动,打包等命令都是在这里配置。
八、