如何开发一个自己的包并发布到npm

注册npm账号

点击 npm官网 注册自己的账号

构建一个自己的包

本地新建一个文件夹

文件夹内新建三个文件,index.js,package.json,README.md

index.js:写分享出去的对象。

package.json:写name:包的名字(必须),version:版本号,main:包的入口文件,以及其他相关配置信息。

注意:package.json中的name在npm官网上搜一下,必须具有唯一性

比如

README.md:说明文档,没有特殊要求

下面举一个例子,构建一个将一个数据转换为万元为单位的包

包的结构如下:

index.js内容如下:

javascript 复制代码
const thousand=require('./dist/thousand');
module.exports={
    ...thousand
}

dist/thousand.js内容如下:

javascript 复制代码
 const formatAsTenThousand = number => {
    if (!number) return "";
    return (number / 10000).toFixed(1);
  };
  exports.formatAsTenThousand=formatAsTenThousand

package.json内容如下:

javascript 复制代码
{
    "name": "thousand_tools",
    "version": "1.0.0",
    "main": "index.js",
    "description": "将一个数据转换为万元为单位",
    "keywords": [
        "thousand",
        "escape"
    ],
    "license": "ISC",
    "dependencies": {
        "thousand_tools": "^1.0.0"
    }
}

README.md内容自己看着写

登录npm账号

确认本地终端为npm

在登录之前,要确认本地的镜像源为npm官方服务器,否则会导致发布失败。在终端输入:

javascript 复制代码
npm config get registry

上图看出本地终端是淘宝镜像,所以要切换当前镜像为npm

切换npm镜像

两种方式

1、nrm 镜像源管理

终端输入npm i nrm -g,全局安装nrm

javascript 复制代码
npm i nrm -g

安装完成后,在本地终端输入nrm ls,查看可用的镜像源

javascript 复制代码
nrm ls

上图表示,当前镜像源为npm

第一次上传包之前,终端输入 nrm use npm,确保切换镜像源为npm

javascript 复制代码
nrm use npm

nrm use 镜像源名称,表示切换为当前镜像源。比如nrm use yan,nrm use taobao等

2、命令行直接切换

终端直接输入npm config set 镜像源地址进行切换

javascript 复制代码
npm config set https://registry.npmjs.org/

终端登录npm

终端输入npm login

javascript 复制代码
npm login

按照提示输入账号,密码

登录完成之后,可以终端输入 npm whoami确定是否登录成功

javascript 复制代码
npm whoami

发布包到npm

按照上面步骤,登录成功之后,切换到要发布的包的根目录,终端输入npm publish

javascript 复制代码
npm publish

然后回到npm官网

看到上图,thousand_tools包即发布成功。

删除包

终端输入

javascript 复制代码
npm unpublish thousand_tools --force

npm unpublish 包名 --force,即可从 npm 删除已发布的包。

比如删除上面thousand_tools包

注意:

npm unpublish 命令只能删除 72 小时以内发布的包

npm unpublish 删除的包,在 24 小时内不允许重复发布

相关推荐
爱喝水的鱼丶6 小时前
SAP-ABAP:SAP概述:数据处理的系统、应用与产品
运维·学习·sap·abap·1024程序员节
百***35516 小时前
TypeScript 与后端开发Node.js
javascript·typescript·node.js
q***46526 小时前
最新最详细的配置Node.js环境教程
node.js
jenchoi4137 小时前
【2025-11-15】软件供应链安全日报:最新漏洞预警与投毒预警情报汇总
前端·网络·安全·网络安全·npm·node.js
天蓝色的鱼鱼8 小时前
前端小白Express入门:初识Web框架与项目搭建
前端·node.js·express
q***09808 小时前
node.js下载、安装、设置国内镜像源(永久)(Windows11)
node.js
q***57748 小时前
Node.JS 版本管理工具 Fnm 安装及配置(Windows)
windows·node.js
i***27958 小时前
Node.js v16 版本安装
node.js
k***85848 小时前
使用Node.js搭配express框架快速构建后端业务接口模块Demo
node.js·express
百***680416 小时前
Node.JS 版本管理工具 Fnm 安装及配置(Windows)
windows·node.js