范围
范围包
描述
所有 npm 包都有一个名称。一些包名也有范围。范围遵循包名称的通常规则(URL 安全字符,没有前导点或下划线)。在包名中使用时,作用域前面有一个 @
符号,后面是一个斜杠,例如
@somescope/somepackagename
范围是一种将相关包组合在一起的方式,也影响 npm 处理包的方式的一些事情。
每个 npm 用户/组织都有自己的范围,只有你可以在你的范围内添加包。这意味着您不必担心有人抢先您的包名称。因此,这也是向组织发出官方包信号的好方法。
范围包可以从 npm@2
开始发布和安装,并且受主 npm 注册表支持。无范围包可以依赖于范围包,反之亦然。npm 客户端向后兼容无范围注册表,因此它可以同时用于作用域和无范围注册表。
安装范围包
F7KUvMGgQcR62G5DCMe38nGivnq+W7I61zaOaNqEOzELZuXehdkcXSGN8PDXy9Ai4S/oc80/LZNMRn9x2QU4F39pZy73t2yyezal9K9/f3NJtTMUCc23+uTsuRtdYKqpeRbxzFA6u6NJ6POs+pMX70BZNF9td5wmjNNCTt/JWWCxu6pdW4B15+0PHFvuWgKD1HMdcjl5edK5s0TN5yJeTJJ9DxcX9vTlYB3YNmj10BP/igYQyhoNHRrLIKflIqnh4eAiFgsSLgs4i2UQNHg2ZuNvp+Yyj0FmTlSv+w+81Jn3PYSgBd1wtznuMPXHGqqR/huO+DwX1MGzw0qwDfydD3b+7MLTk3IMi9eEbhF9vs14k6N/0EpZO5wnrGRPCNDUjCNXoU6sH8hS6JedsJ4G0HXNUS55gUAh5iyBuzL7pbb79v/fYkr/XgxHumpDGTZZaG8z8xTCVbAySLG3/LLZgHFvFaI1k9csUfr7x+YlmyQ=
RZFak76moRdpvtXCCiIFpBlmhyjhHltHgIjsrD7DrfAyqb8H2ggrgN8RGft7tC37DAJ6ox/786G7F7YXFBpiDPUmqFxOFJmnaaRbLxixQzhgaAz0f6lL20v6JIPSIEVRI1ybjUkXUo9rnETJyryJKKBneOJFwtQP0u2TI5oQ0Ts=
npm install @myorg/mypackage
IlQy6hbSgkIaX7j+kyZe7OMBDzYvdUMtjZVbikqxQzwrKslFys5Vb37hRrcyE/T/
"dependencies": {
"@myorg/mypackage": "^1.3.0"
}
OiDR+NlxGmdmHfdP1hROeLZEURemmade68Q4fh+54aJ0XW22VQgbbvsgiRpyROytppUpbDgXtNZiCO7R4Iqaa7K05UHCI18tZhKox1cYR1df3s4gdRUieso7GRqAwhAA20r2Awt0pju02tVRIE/0Y9kFrAAGmpujHfAsju21tR3pwJDRc08q94UgiRorM4dPSzj4xfXCSKWTod27gb7Tc7IjZmNuYvrK3yLDsQkNg8hEUk93VUsTX/gqV69TcNQZ
需要范围包
6NMxUyKy9GykkqsJisdNX3IJE3lhUD2PJ8e8HJl8gvzauW/v4hfBaLR3uvl92WZvFF4XjOS9XVam2j8PU8VbcO1DE2DqIkvyDy+Noz//mImWRdpIcVVL3ddlIRmte7zD6FxUMMNABwHKWryK7qo39P2/0Msc3KSSb7VkwGLrUr4=
require('@myorg/mypackage')
pYGX3vGGfppnVmTM659qZoH5X5fhYSEKHQTjEiN52qvrUOnILtfXPl6C7rnQfgCSDMvXZ5ItrYi4pXNI+A6c3f72rVMbwspde1rVQ/5VF8NWbfrLawfbsjak+8n2bi1nfnsd9yAO+BOD7j7//dOy/P1iUA2ptK35yx5Ny4h+kwpU5UrDSFEHoNrhRjarF+8IUrUnp3Wc4INfVL/uQkAjcQ==
发布范围包
RKlRG0Xky0s8014BNKzX7dUmNlSEcFzKuNLh+gFTOGRARcvniRSMWeEzvLxULJPUiZV8eSyUcIVMEO1bfT70xV/iD8cfjM/pHLQy6n+e3EKDpQE1KcyeJi9e4jf7C7aMfj7G2q9THyK9okLzUREHgtKPcDsZ8hNngM3P807ZRmcT+aL8oO0HSAk7wXO7zOdg
OGwFBvIIxT9COCr1+Z30tudmy9FfML5Egz0D2vuytLb+JpDlB/0okymLh43MdbeIO805ksd0DO5JfgrKKpE8UAxMc2Zf2pYBKwPhRR/LEG+1JONd9AH+HfaKCz8g7RMtNVwpw0O6LUBsqAwODrlzLQ==
YNtp2guH48zgUVZdAkp5yKekAmGQD8eL2+Uh5gQsKMRx22Va0QCMRNKgkVjFTlIBWoQMY/za77h3UgH+xLmlXX2+tbQPNh8LiYdUUO9Ln7U=
将公共范围的包发布到主 npm 注册表
oZ/lzuqh7P/9MK6Q2eoEeQWa7PdwavCd86wmhtUO/qRZb82cMkAtN8WMBTaf6XIZyrEWiRBMeQUvOLX2uFByXH41E3ii5QSEIcIsPgIZqW6V1qFxjAr17g0BGcOGqY9AFh4BijA+x4O63NCvaLk9CgXgHRar8f0CT0x2+vJbTNDc5UAbT1BKSznFO4ySO/ltiFmCX2d2ma5D2HL0RZbz4PBYtPINgBSXUj8agYuNQFI9/DB62DDLY5aBSV+ddjAqE5XO9ddkeFcxU5THaUoqlWmluAPdS7LS16Fc53zq6dNnekQlJaZGcaww9dTfrEHn
将私有范围包发布到 npm 注册表
J7Nhh2qiLM4GYJ9yLuVH9gO+7aMj7iR3MwGGlCEX/vc5uL0RR2yaQkivbesfL3BcfwLtn99Kynk1SO4T7sSaH7I1xbgcdSOd0w+Kug2zRVs7KmI9nYRysXiyr7SjFJuR+Qg2PHKpLHmIaFjzx9GAlqEDnm1HriAHiMdZqxyX+Wka9fhnmTUeApkZCtjXOVKD
9GoVm0uCOJweluTNsbNP91mVu6ReP5oCyUk/kwBN1otC2mT9oRRfvpMCHVj7C32BNtsjMbTLPOQyNNXq1Zbu44AX/JJFcEkGmB8vM6VBFC/bXwmaqa9S0QF91t296kAk3tcO51vxxIPorH6L7eAtEAO8ZXeCtFN651qgvf+utAJXZK1W/UPSb9oH7RirTPcfLJJxd8XJMwF5xLTTWqncW92sYCC3uKyXuV6//jjD8XiOS3HZzoA8/RgexlTcKC0xtrwPcA8EmUHc4FfdTzWHT9JotICTh3T/LTM4CzzyPEIYLOn9TB4vuHHHBzutD919DjKElW5GxZtpq/TQ6HxkrJPgYhsmTjhxgsJD6kqZr0uARXhwX9TpsXVQ9E2dMLUI
将范围与注册表关联
+StxvBKqjw5eewjxmszAKsTW55uscH5hYlitCmGt3ExXOehofRGhj70JrOiERQppt2Hh18wJJAB+WrGOldj0OAtzWj5VuufaZNmoeuiV8qxbGuCJcnHq39yWaW8+EZ1gv07Ed/EcfzyOmB0pAy5q3umjv2OQKe0ydqyjbIQre45rfM7Du3Ufo/O2caX0WTqPxYyIP5wEpo7eQqypYeCqAbVAwkcIOjNYONb87Q9onQKd6P0B8N0sbAs6H97tqDmd8ODE+4lYTFhtV2XYVbOODA==
a16XyUF96SFZDBkX7fe6aVP61pg87zZ/Zgeo3UZgQkbXZeg9NyyJRMgH174yHxnDUVYbAZG1yUtcQkjUE531zg==
npm login --registry=http://reg.example.com --scope=@myco
ZPafpPZ9/l7jWzah9u4KZu5W+40PBsmN2oT0QX05vOACM8QE9kQNNEhpgani5RVM+0ueX8VH34ZJ2tiRlsl1pAJTdmgP9izJLYmS1i6gs4sk1RGgnmANZ/6oE+K/WHy3nhAOmVJfhvOv20KnY+OOMm4bZJHgGLyTCcNdxx/6oNLkrifXbZrudYRYJNuUPDvM
De7CIboB36NGSbVkR0iJPrjB1fV8dMDUHfvarJVKs4xhJglCyriEZk7O4cpMGAFEjQ5w9Y7IDnRL7w3hbfjXXqolj5xsGpYmDPDaXIWGJR0=
npm config set @myco:registry http://reg.example.com
mlW4dh0xeHE8a+/1Hn7R/ytM04PMDd2cLHHsh3b69rztNLnT9Jb1YW7azgUi5iCvyMkr6gpMXVHWVK+2P7fbOYn/XCWfaonpiDcQ0cdzeEcG2KIfvC+16M/EzUF6EhjikvKyUPvzcczMK2MTi3Gjs++JB1+fpdnG0ng5pR8uGw7dhHzeVm7dLp2ZssMtRcaNvwLmsM4rz5JGA/jkiXg4YhszL9tkWqxwa85xu8MjXf/BmFJDkMUO+HIcn9LNi1mAgoa89gonOmBjlrf+tGjChu3bXRzhm6OKhiZjn6g1V1o=