使用范围包(Working with scoped packages)

Scopes将相当于npm模块的命名空间。如果包名以@开始,那他就是一个scoped package。scope是介于@和slash之间的

@scope/project-name
每个npm用户由他自己的scope.
@username/project-name
可以在CLI documentation里找到更多关于scopes的信息

更新npm和log in

版本应该大于2.7.0,并且如果是第一次在命令行里使用scopes modules需要再次log in 到npm.

sudo npm install -g npm
npm login

初始化scoped package

为了创建scoped package, 简单的使用package名开始scope

{
    "name":"@username/project-name"
}

如果使用npm init,可以使用命令行添加scope:

npm init --scope=username

如果一直使用相同的scope,可能需要在.npmrc文件里设置

npm config set scope username

发布scoped package

Scoped packages默认是私有的。为了发布私有的模块,应该付费成为private modules用户。

但是,public scoped模块是免费的不需要支付.发布公开的scoped模块,在发布时设置访问选项。这个选项会为所有的后面发布保存设置
npm publish --access=public

使用scoped package

简单的在你使用的包名里包含scope
在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获取更多的scoped private module信息。

你可能感兴趣的:(使用范围包(Working with scoped packages))