1、package.json简介
什么是Node.js的模块(Module)?
在Node.js中,模块是一个库或框架,也是一个Node.js项目。Node.js项目遵循模块化的架构,当我们创建了一个Node.js项目,意味着创建了一个模块,这个模块的描述文件,被称为package.json。
通常情况下如果 package.json内容出错,会导致项目出现bug,甚至阻止项目的运行。
所以在修改该文件时候一定要小心,格式,名称等是否正确
2、package.json属性说明
- name - 包名.
- version - 包的版本号。
- description - 包的描述。
- homepage - 包的官网URL。
- author - 包的作者,它的值是你在https://npmjs.org网站的有效账户名,遵循“账户名<邮件>”的规则,例如:zhangsan zhangsan@163.com。
- contributors - 包的其他贡献者。
- dependencies / devDependencies - 生产/开发环境依赖包列表。它们将会被安装在 node_module 目录下。
- repository - 包代码的Repo信息,包括type和URL,type可以是git或svn,URL则是包的Repo地址。
- main - main 字段指定了程序的主入口文件,require(‘moduleName’) 就会加载这个文件。这个字段的默认值是模块根目录下面的 index.js。
- keywords - 关键字
上述参数是极为常见的参数,另外还可以设置script、license等等。除了官方必须的一些参数外,我们也可以存储我们自己的关于模块的描述信息在package.json。
3、生成package.json文件
可以使用npm生成package.json文件,它可以包含最基本的设置以及结果。
例如:运行
npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.
See `npm help json` for definitive documentation on these fields
and exactly what they do.
Use `npm install <pkg> --save` afterwards to install a package and
save it as a dependency in the package.json file.
Press ^C at any time to quit.
name: (node_modules) runoob # 模块名
version: (1.0.0)
description: Node.js 测试模块(www.xxxxx.com) # 描述
entry point: (index.js)
test command: make test
git repository: https://github.com/xxxxx/xxxxx.git # Github 地址
keywords:
author:
license: (ISC)
About to write to ……/node_modules/package.json: # 生成地址
{
"name": "runoob",
"version": "1.0.0",
"description": "Node.js 测试模块(www.runoob.com)",
…… # 其他参数
}
Is this ok? (yes): yes
最后输入yes
这样就生成了一个最基本的package.json文件。
注意:
手动更改的时候要完全遵循严格的JSON书写格式,否则容易出现意想不到的简单错误。