nodejs npm package.json中文文档

2020-06-17 05:45:27易采站长站整理

简介

本文档有所有package.json中必要的配置。它必须是真正的json,而不是js对象。

本文档中描述的很多行为都受npm-config(7)的影响。

默认值

npm会根据包内容设置一些默认值。

”scripts”: {“start”: “node server.js”}
如果包的根目录有server.js文件,npm会默认将start命令设置为node server.js。

“scripts”:{“preinstall”: “node-waf clean || true; node-waf configure build”}
如果包的根目录有wscript文件,npm会默认将preinstall命令用node-waf进行编译。

“scripts”:{“preinstall”: “node-gyp rebuild”}
如果包的根目录有binding.gyp文件,npm会默认将preinstall命令用node-gyp进行编译。

“contributors”: […]如果包的根目录有AUTHORS文件,npm会默认逐行按Name <email> (url)格式处理,邮箱和url是可选的。#号和空格开头的行会被忽略。

name

在package.json中最重要的就是name和version字段。他们都是必须的,如果没有就无法install。name和version一起组成的标识在假设中是唯一的。改变包应该同时改变version。

name是这个东西的名字。注意:

1.不要把node或者js放在名字中。因为你写了package.json它就被假定成为了js,不过你可以用”engine”字段指定一个引擎(见后文)。
2.这个名字会作为在URL的一部分、命令行的参数或者文件夹的名字。任何non-url-safe的字符都是不能用的。
3.这个名字可能会作为参数被传入require(),所以它应该比较短,但也要意义清晰。
4.在你爱上你的名字之前,你可能要去npm registry查看一下这个名字是否已经被使用了。http://registry.npmjs.org/

version

在package.json中最重要的就是name和version字段。他们都是必须的,如果没有就无法install。name和version一起组成的标识在假设中是唯一的。改变包应该同时改变version。

version必须能被node-semver解析,它被包在npm的依赖中。(要自己用可以执行npm install semver)

可用的“数字”或者“范围”见semver(7).

description

放简介,字符串。方便屌丝们在npm search中搜索。

keywords

关键字,数组、字符串。还是方便屌丝们在npm search中搜索。

homepage

项目官网的url。

注意:这和“url”不一样。如果你放一个“url”字段,registry会以为是一个跳转到你发布在其他地方的地址,然后喊你滚粗。

嗯,滚粗,没开玩笑。

bugs

你项目的提交问题的url和(或)邮件地址。这对遇到问题的屌丝很有帮助。

差不多长这样: