【npm】创建和发布无作用域的公共包

目录

1、创建包项目

2、进入目录

3、初始化项目

4、查看当前npm镜像源

5、切换镜像源

6、查看当前登录用户

[7、登录 npm 用户](#7、登录 npm 用户)

8、发布

9、查看公共包页面

10、删除已发布的npm包

11、📚总结


1、创建包项目

bash 复制代码
# 在命令行上,为包创建目录
mkdir vinca-package

2、进入目录

bash 复制代码
# 进入该目录
cd vinca-package

3、初始化项目

bash 复制代码
# 构建 package.json
npm init 

响应提示以生成 package.json 文件

bash 复制代码
C:\Users\vinca-package>npm init
This utility will walk you through creating a package.json file.
It only covers the most common items, and tries to guess sensible defaults.

See `npm help init` for definitive documentation on these fields
and exactly what they do.

Use `npm install <pkg>` afterwards to install a package and
save it as a dependency in the package.json file.

Press ^C at any time to quit.
package name: (vinca-package)
version: (1.0.0)
description: 我的第一个npm包
entry point: (index.js)
test command:
git repository:
keywords:
author: Vinca
license: (ISC)
About to write to C:\Users\vinca-package\package.json:

{
  "name": "vinca-package",
  "version": "1.0.0",
  "description": "我的第一个npm包",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Vinca",
  "license": "ISC"
}


Is this OK? (yes)

C:\Users\vinca-package>

注意:package name有唯一性,否则发包会失败。如果冲突了,请使用编辑器打开该文件并修改name的值。

4、查看当前npm镜像源

bash 复制代码
npm config get registry

5、切换镜像源

如果不是官方默认镜像,请执行以下命令切换到npm官方镜像源:

bash 复制代码
# 切换到npm官方源
npm config set registry https://registry.npmjs.org

参阅:http://t.csdnimg.cn/dm1xA

6、查看当前登录用户

bash 复制代码
# 查看当前登录的用户
npm whoami

7、登录 npm 用户

bash 复制代码
# 登录用户
npm login
  1. 输入命令之后,敲击ENTER键弹出浏览器进行鉴权登录。
  2. 如果你还未注册请先完成注册流程。前往注册:npm | Sign Up
  3. 正确输入账密登录后,你的注册邮箱会收到一条来自【npm】发送的 OTP code 一次性密码,直接输入点击login即可。
  4. 身份验证成功,之后回到"命令提示符"窗口,敲击ENTER键,完成登录鉴权响应。
  5. 这时候在此输入 npm whoami 就会出现你的账号名了。

8、发布

bash 复制代码
npm publish

发布成功,底部的回显消息:

bash 复制代码
+ vinca-package@1.0.0

同时,你的邮箱会收到发布该包的成功信息,包含SHASUM。

9、查看公共包页面

  • 通过快捷链接查看
bash 复制代码
# *package-name* 替换成你的包名
https://npmjs.com/package/*package-name*
  • 登录 npm > Packages 查看你的所有npm包资源。

10、删除已发布的npm包

bash 复制代码
# 从注册表中删除包,[<package-spec>] 换成你的包名,--force 强制删除
npm unpublish [<package-spec>] --force
  • 如果您未登录,将返回错误信息。
  • 24小时之内不能发布该包的任何新版本。

删除成功回显消息:

bash 复制代码
- vinca-npm

11、📚总结

以下是 npm 命令及其用法:

1、access - 用于设置包的访问级别,可以是 public 或 private。

  • 示例:npm access public my-package 将包设置为公共访问级别。
  • 注意事项:只有包的所有者才能更改访问级别。

2、adduser - 用于在 npm 上创建或登录用户账号。

  • 示例:npm adduser
  • 注意事项:需要提供 npm 账号的用户名、密码和电子邮件地址。

3、audit - 用于检查项目依赖项的安全性漏洞。

  • 示例:npm audit
  • 注意事项:可以通过 npm audit fix 尝试修复一些安全性问题。

4、bugs - 显示一个包的 Bug 提交地址。

  • 示例:npm bugs my-package

5、cache - 用于管理 npm 缓存。

  • 示例:npm cache clean --force 用于强制清空 npm 缓存。

6、ci - 类似于 install 命令,但用于持续集成环境。

  • 示例:npm ci
  • 注意事项:通常用于在持续集成过程中快速安装项目依赖项。

7、completion - 生成 shell 自动补全脚本。

  • 示例:npm completion >> ~/.bashrc 用于在 Bash 中启用自动补全。

8、config - 用于配置 npm 行为的命令。

  • 示例:npm config set registry https://registry.npm.taobao.org 用于将注册表更改为淘宝镜像。
  • 注意事项:全局配置使用 --global 选项。

9、dedupe - 用于减少依赖项中的重复模块。

  • 示例:npm dedupe
  • 注意事项:可以减少项目的依赖项大小。

10、deprecate - 用于标记包或包的版本为不推荐使用。

  • 示例:npm deprecate my-package@"<1.0.0" "This version is deprecated. Please upgrade."

11、diff - 用于查看两个版本之间的差异。

  • 示例:npm diff my-package@1.0.0 my-package@2.0.0

12、dist-tag - 用于管理包的版本标签。

  • 示例:npm dist-tag add my-package@1.0.0 latest
  • 注意事项:常用于发布预览版本或稳定版本。

16、docs - 打开包的文档页面。

  • 示例:npm docs my-package

17、doctor - 用于检查项目的环境和配置。

  • 示例:npm doctor

18、edit - 在文本编辑器中编辑本地包。

  • 示例:npm edit my-package

19、exec - 在包安装后执行任意命令。

  • 示例:npm exec my-package -- ls -l

20、explain - 解释 npm 错误代码的含义。

  • 示例:npm explain E404

21、explore - 在浏览器中打开一个包的主页。

  • 示例:npm explore my-package

22、find-dupes - 查找项目依赖项中的重复模块。

  • 示例:npm find-dupes

23、fund - 显示项目依赖项的资助信息。

  • 示例:npm fund

以上是 npm 的一些常用命令及其用法示例和注意事项。


相关推荐
universe_0111 分钟前
day27|前端框架学习
前端·笔记
沙尘暴炒饭13 分钟前
前端vue使用canvas封装图片标注功能,鼠标画矩形框,标注文字 包含下载标注之后的图片
前端·vue.js·计算机外设
百思可瑞教育33 分钟前
Vue中使用keep-alive实现页面前进刷新、后退缓存的完整方案
前端·javascript·vue.js·缓存·uni-app·北京百思可瑞教育
yinuo37 分钟前
Uni-App跨端实战:APP的WebView与H5通信全流程解析(03)
前端
yinuo40 分钟前
Uni-App跨端实战:支付宝小程序WebView与H5通信全流程解析(02)
前端
草梅友仁1 小时前
草梅 Auth 1.7.0 发布 Demo 模式 | 2025 年第 37 周草梅周报
开源·node.js·github
GISer_Jing2 小时前
sqb&ks二面(准备)
前端·javascript·面试
谢尔登2 小时前
【Webpack】模块联邦
前端·webpack·node.js
Bottle4142 小时前
深入探究 React Fiber(译文)
前端
汤姆Tom2 小时前
JavaScript Proxy 对象详解与应用
前端·javascript