npm学习(十)之如何使用创建、发布、使用作用域包
前言
要求npm版本2或更高
作用域用于将相关包分组在一起,并为npm模块创建一个名称空间(类似于域)。这里有更详细的解释。
如果一个包的名称以@开头,那么它就是一个有作用域的包。范围是@和斜杠之间的所有内容。
@scope/project-name
每个npm用户都有自己的范围。
@username/project-name
如何初始化作用域包
要创建有作用域的包,只需使用以作用域开头的包名。
{ "name": "@username/project-name" }
如果使用npm init,可以将范围作为选项添加到该命令。
npm init --scope=username
如果一直使用相同的作用域,您可能希望在.npmrc文件中设置此选项。
npm config set scope username
如何发布作用域包
默认情况下,作用域包是私有的。要发布私有模块,您需要是付费的私有模块用户。
公共作用域模块是免费的,不需要付费订阅。若要发布公共作用域模块,请在发布时设置access选项。此选项将保留为所有后续发布设置。
npm publish --access=public
使用作用域包
要使用有作用域的包,只需在使用包名的任何地方包含作用域。
在package.json:
{ "dependencies": { "@username/project-name": "^1.0.0" } }
在命令行:
npm install @username/project-name --save
在require声明中:
var projectName = require("@username/project-name")
有关使用范围私有模块的信息,请访问npmjs.com/private-modules。