packge.json
一个 package.json 包括:
- 列出项目所依赖的包
- 指定项目可以使用语义版本控制规则使用的包版本
- 使您的构建可重现,因此更容易与其他开发人员共享
包SEO: 可以加一个 description
,别人可以在npm 网站更好的查找你的npm Module
package 必填字段
name version
package.json 文件必须包含“"name"”和"version"字段。
"name"字段包含包的名称,必须为小写和一个单词,并且可以包含连字符和下划线。
"version"字段必须采用 x.x.x 格式,并遵循语义版本控制准则.
author
作者字段,作者信息 用 电子邮件和网站,它是可选的
代码语言:txt复制{
"name": "npm-demo",
"version": "1.0.0",
"author": "123456@qq.com",
"description": "NPM Test Module",
"main": "index.js",
"scripts": {
"test": "echo "Error: no test specified" && exit 1"
},
"keywords": [],
"license": "ISC"
}
创建 package.json
- 要创建 package.json 文件,请在命令行上,在 Node.js 模块的根目录中运行 npm init:
- 对于作用域模块,运行 npm init --scope=@scope-name
- 对于无作用域模块,运行 npm init
- 为必填字段(nameversion)以及main字段提供响应:
- name:模块的名称。
- 版本:初始模块version。我们建议遵循语义版本控制准则并从 1.0.0 开始.
npm init
npm init --yes
init 配置选项
可以为 init 命令设置默认配置选项。例如,若要设置默认作者电子邮件、作者姓名和许可证,请在命令行上运行以下命令:
代码语言:txt复制> npm set init-author-email "example-user@example.com"
> npm set init-author-name "example_user"
> npm set init-license "MIT"
创建 READ.md 包描述文件
创建无作用域公共包
什么是无作用域公共包?
无作用域包始终是公共的,并且仅由包名称引用,它可以供别人和它人直接使用在项目当中。
创建无作用域的公共包
代码语言:txt复制 npm init
发布无作用域公共包
代码语言:txt复制npm publish
创建作用域包
在用户或组织命名空间中公开共享代码,可以将公共用户范围或组织范围的包发布到 npm 注册表。
代码语言:txt复制npm init --scope=@my-org
my-org
替换成 组织范围 或者 用户范围的 命名就可以
发布作用域包
代码语言:txt复制npm publish --access public
Npm 包范围、访问级别和可见性
范围 | 访问级别 | 可以查看和下载 | 可以写入(发布) |
---|---|---|---|
组织 | 私人 | 组织中对包具有读取访问权限的团队成员 | 组织中对包具有读写访问权限的团队成员 |
组织 | 公共 | 每个人 都 | 组织中对包具有读写访问权限的团队成员 |
用户 | 私人 | 包所有者和已被授予对包的读取访问权限的用户 | 包所有者和已被授予对包的读写访问权限的用户 |
用户 | 公共 | 每个人 都 | 包所有者和已被授予对包的读写访问权限的用户 |
无作用域 | 公共 | 每个人 都 | 包所有者和已被授予对包的读写访问权限的用户 |
注意:只有用户帐户才能创建和管理无作用域包。组织只能管理作用域包。