NPM 管理组织包

简介: NPM 管理组织包

1、关于组织范围和包

每个组织都被授予一个组织作用域,即与组织名称匹配的组织所拥有的包的唯一命名空间。例如,名为“wombat”的组织将具有范围@wombat

您可以使用作用域:

  • 维护一个包的分支:@wombat/request
  • 避免与流行名称的名称争议:@wombat/web
  • 在同一命名空间中轻松查找包

作用域中的包必须遵循与非作用域包相同的命名准则。

1.1 管理无作用域的包

虽然在创建组织时默认情况下会授予一个范围,但您也可以使用组织来管理未限定范围的包或其他范围(如用户范围)下的包。

2、使用组织设置配置npm客户端

作为组织成员,您可以将npm客户端配置为:

  • 使您在本地创建的单个包或所有新包使用您组织的作用域
  • 使本地创建的单个包或所有新包具有默认的公共可见性

2.1 配置您的npm客户端以使用您组织的范围

如果您将经常发布具有组织范围的包,则可以将组织范围添加到全局.npmrc配置文件中。

为所有新包设置组织范围

注意:使用以下步骤设置组织范围将仅设置新包的范围;对于现有的软件包,您需要更新name中的package.json字段。

在命令行中,运行以下命令,将org-name替换为组织名称:

npm config set scope <org-name> --global

对于不希望使用组织范围发布的包,必须手动编辑包的package.json以从name字段中删除组织范围。

为单个包设置组织范围

1、在命令行中,切换到包的目录中:

cd /path/to/package

2、运行以下命令,将org-name替换为组织名称:

npm config set scope <org-name>

2.2 将默认包可见性更改为public

默认情况下,使用npm publish发布一个有作用域的包将以私有方式发布该包。如果您是免费组织计划中的组织成员,或者是付费组织计划中的组织成员,但要将限定范围的包发布为公共包,则必须传递--access public标志:

npm publish --access public

将单个包的包可见性设置为public

您可以设置单个包,使其将--access public 传递给您为该包发出的每个npm publish命令。

1、在命令行中,切换到包的目录中:

cd /path/to/package

2、运行以下命令:

npm config set access public

将所有包的包可见性设置为public

您可以设置所有包将--access public 传递给您为该包发出的每个npm publish命令。

警告:将包访问权限设置为全局public中的.npmrc将影响您创建的所有包,包括您个人帐户范围内的包以及您组织范围内的包。

在命令行上,运行以下命令:

npm config set access public --global

3、创建和发布组织范围的包

作为组织成员,您可以在组织范围内创建和发布公共包和私有包。

3.1 创建组织范围的包

1、在命令行中,使用要创建的包的名称创建一个目录。

2、切换到新创建的包目录

3、要创建组织范围的包,请在命令行上运行:

npm init --scope=<your_org_name>

4、要验证包是否使用您的组织范围,请在文本编辑器中打开包的package.json文件,并检查名称是否为@your_org_name/<pkg_name>,也可以直接修改name字段,将your_org_name替换为您的组织名称。

3.2 发布私有组织范围的包

默认情况下,npm publish将发布一个范围内的包作为私有包。

默认情况下,任何作用域的包都发布为私有包。但是,如果您所在的组织没有“私有包”功能,则除非传递access标志,否则npm发布将失败。

1、在命令行中,切换到包的目录中。

2、运行 npm publish

如果开启双重认证,需要打开上图中,最下面的链接,需要进行双重认证之后返回一次性密码,然后粘贴密码复制到当前窗口即可,将发布成组织范围的私有包。

私有包会在npm网站上的包名下面显示private。例如下图所示:

3.3 发布公共组织范围的包

要将组织范围内的包发布为公共包,请使用npm publish --access public

1、在命令行中,切换到包的目录。

2、运行 npm publish --access public

公共包会在npm网站上,有public 标识,如下图所示:

发布成功之后,会有邮件提示你,包已经发布成功,可以登录npm网站进行查看。



相关文章
|
5月前
|
JavaScript Linux 数据安全/隐私保护
node内网安装npm私服以及依赖包上传发布verdaccio
node内网安装npm私服以及依赖包上传发布verdaccio
369 1
|
5月前
|
资源调度 小程序 前端开发
【微信小程序】-- npm包总结 --- 基础篇完结(四十七)
【微信小程序】-- npm包总结 --- 基础篇完结(四十七)
|
5月前
|
JavaScript 内存技术
node与npm版本对应关系以及使用nvm管理node版本
node与npm版本对应关系以及使用nvm管理node版本
2059 0
|
14天前
|
数据安全/隐私保护
发布一个npm包
发布一个npm包
|
2月前
NPM——删除已发布的包
NPM——删除已发布的包
55 1
|
3月前
|
运维 Kubernetes Java
阿里云云效操作报错合集之npm包已经发布到了制品仓库,但流水线中拉取依赖时出现404错误,该如何排查
本合集将整理呈现用户在使用过程中遇到的报错及其对应的解决办法,包括但不限于账户权限设置错误、项目配置不正确、代码提交冲突、构建任务执行失败、测试环境异常、需求流转阻塞等问题。阿里云云效是一站式企业级研发协同和DevOps平台,为企业提供从需求规划、开发、测试、发布到运维、运营的全流程端到端服务和工具支撑,致力于提升企业的研发效能和创新能力。
阿里云云效操作报错合集之npm包已经发布到了制品仓库,但流水线中拉取依赖时出现404错误,该如何排查
|
2月前
|
JavaScript 前端开发 开发者
从零到一:教你如何发布自己的npm插件包
从零到一:教你如何发布自己的npm插件包
|
2月前
|
JavaScript
GitHub——自动发布NPM包
GitHub——自动发布NPM包
14 0
|
5月前
|
前端开发 JavaScript 数据安全/隐私保护
从0到1开发一个自己的npm包完整过程
创建自己的 npm 包涉及六个步骤:1) 注册 npm 账号;2) 使用 `npm init` 初始化项目,确保 package.json 的 name 唯一且 private 为 false;3) 开发项目,可封装 UI 组件、函数库或命令行工具;4) 本地调试,通过 `npm link` 在项目中测试;5) `npm login` 登录账号,可能需切换至官方仓库;6) 使用 `npm publish` 发布项目。注意版本号递增,无意义的包不建议发布。
186 2
从0到1开发一个自己的npm包完整过程
|
5月前
|
JSON 小程序 前端开发
小程序中使用npm安装vant组件实现按需引入减少代码包大小,避免触发用户隐私协议
微信小程序按需引入 vant 组件,自动清除项目中未使用的 vant 组件,减少代码包大小,避免因未使用到的 vant 组件触发隐私协议提交审核时被拒
75 1
小程序中使用npm安装vant组件实现按需引入减少代码包大小,避免触发用户隐私协议

推荐镜像

更多
下一篇
无影云桌面