使用域包

scope类似于npm模块中的命名空间。如果一个包的名字以@开头,那么这个包就是一个scope包。scope可以是任何字符在@和斜线间。

@scope/project-name

每个用户都有他们自己域:

@username/projet-name

你可以在CLI文档中找到更多关于域的信息。


更新npm和登录

npm的版本需要高于2.7.0,并且如果是你第一次使用域模块的话,那么你就还需要再登录一次。

sudo npm install -g npm
npm login


初始化一个域包

要创建一个域包,你只需要简单地使用一个包名,这个包名以你的域名为前缀。

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

如果你使用的是npm init,那么你可以在参数中指明创建的是域包:

npm init --scope=username

如果你一直都使用某个域,那么你可以在.npmrc文件中配置:

npm config set scope username


发布一个域包

域包默认是私有的。想要发布一个私有的模块,你需要成为一个付费的私有模块用户。

然而,公有的域包还是免费的并且是不要求付任何费用的。要发布一个公有的域包,需要再发布的时候设置访问参数便可。这个参数设置之后之后的发布都会沿用这个设置的:

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")

更多关于私有域包,请查看XXX;

链接: https://www.fly63.com/course/21_1000