• npm本地发包过程


    前置(可忽略)

    如果发布的包只打算放在公司的私有镜像库中,需要先设置一下registry

    // 1、直接设置
    npm config set registry <registry>
    // 2、有使用nrm的可以用nrm切换
    nrm use <registry>
    // 3、项目根目录放一个.npmrc文件,内容包含下面内容
    registry=<registry>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    1、注册、登录(已有账号可跳过注册直接登录)

    注册
    // 添加用户时可以手动设置registry
    npm adduser [--registry=<registry>]
    
    • 1
    • 2
    登录
    // 登录用户时可以手动设置registry
    npm login [--registry=<registry>]
    
    • 1
    • 2
    建议
    • 用户名使用邮箱
    • 密码设置简单容易记住的
    • 邮箱使用公司邮箱或者个人邮箱

    2、发布

    登录后进入到要发布包的项目根目录

    npm publish --registry=<registry>
    
    • 1

    3、验证

    发布包后需要验证的话,可以使用下面的命令

    // search可以用关键字
    npm search <keyword> --registry=<registry>
    
    // 通过发布的包名进行查询
    npm info <package> --registry=<registry>
    
    • 1
    • 2
    • 3
    • 4
    • 5

    4、更新

    更新包只需要2步:

    • 1、修改package.json中的版本号
    • 2、重新执行发布命令npm publish --registry=

    5、删除

    // 完全删除这个包
    npm unpulish <package> [--force]
    // 删除指定版本
    npm unpulish <package>[@<version>] [--force]
    
    • 1
    • 2
    • 3
    • 4

    撤销发布的包有下面的规则:

    • 不允许撤销发布已经超过24小时的包
    • 如果在24小时内确实要撤销,需要加–force参数
    • 即使撤销了发布的包,再次发布的时候也不能与之前被撤销的包的名称/版本其中之一相同,因为这两者构成的唯一性已经被占用,官方并没有随着撤销而删除
    撤销包的推荐命令npm deprecate

    如果是自行测试上传的包,可以使用上面的方式,如果是发布给别人用的,建议用此命令。

    npm deprecate <package>[@<version>] <message>
    
    • 1

    这个命令,并不会在npm上里撤销已有的包,但会在任何人尝试安装这个包的时候得到deprecated的警告

  • 相关阅读:
    【CVE-2023-35843】NocoDB 任意文件读取漏洞
    Docker本地安装Minio对象存储
    Ant Design RangePicker 默认选择时间
    【OpenCV-Python】教程:3-9 轮廓(2)轮廓特征
    SUSCTF 2022 Crypto复现
    springboot视图渲染技术
    Java基础知识面试题
    三十二、Fluent收敛判断标准及方法
    自己动手实现 HashMap(Python字典),彻底系统的学习哈希表(上篇)——不看血亏!!!
    【leetcode 力扣刷题】栈和队列的基础知识 + 栈的经典应用—匹配
  • 原文地址:https://blog.csdn.net/qq_43398736/article/details/127567373