面试官:你之前的工作发布过npm包吗?

背景🌟

我们公司平时在开发的时候,总是会需要开发一些组件库,去提供给组内其他人通用,这样大大提高了复用性,当然大厂会有自己的组件库,不过学无止境嘛,大家可以根据本文学会如何发布npm包!现在一起来吧~

01、步骤一注册

打开npm官网,如果没有账号就注册账号,如果有就登陆。

02、步骤二创建文件夹

按需求创建一个文件夹,本文以test为例。

03、步骤三初始化package.json文件

进入test文件夹里面,使用cmd打开命令行窗口,在命令行窗口里面输入npm init初始化package.json文件。也可以在Visual Studio Coode的终端里面使用npm init命令初始化。

04、步骤四初始化package.json文件的过程

创建package.json的步骤

01、package name: 设置包名,也就是下载时所使用的的命令,设置需谨慎。

02、version: 设置版本号,如果不设置那就默认版本号。

03、description: 包描述,就是对这个包的概括。

04、entry point: 设置入口文件,如果不设置会默认为index.js文件。

05、test command: 设置测试指令,默认值就是一句不能执行的话,可不设置。

06、git repository: 设置或创建git管理库。

07、keywords: 设置关键字,也可以不设置。

08、author: 设置作者名称,可不设置。

09、license: 备案号,可以不设置。

10、回车即可生成package.json文件,然后还有一行需要输入yes命令就推出窗口。

11、测试package.json文件是否创建成功的命令npm install -g。

05、步骤五创建index.js文件

test文件夹根目录下创建index.js文件,接着就是编写index.js文件了,此处不作详细叙述。

06、步骤六初始化package-lock.json文件

test根目录下使用npm link命令创建package-lock.json文件。

07、步骤七登录npm账号

使用npm login链接npm官网账号,此过程需要输入Username、Password和Email,需要提前准备好。连接成功会输出Logged in as [Username] on registry.npmjs.org/ 这句话,账号不同,输出会有不同。

08、步骤八发布包到npm服务器

执行npm publish命令发布包即可。

09、步骤九下载安装

下载安装使用包,此例的下载命令是npm install mj-calculation --save

10、步骤十更新包

更新包的命npm version patch,更新成功会输出版本号,版本号会自动加一,此更新只针对本地而言。

11、步骤十一发布包到npm服务器

更新包至npm服务器的命令npm publish,成功会输出版本,npm服务器的版本也会更新。

12、步骤十二删除指定版本

删除指定版本npm unpublish mj-calculation@1.0.2,成功会输出删除的版本号,对应服务器也会删除。

13、步骤十三删除包

撤销已发布的包npm unpublish mj-calculation使用的命令。

14、步骤十四强制删除包

强制撤销已发布的包npm unpublish mj-calculation --force使用的命令。

相关推荐
海石1 天前
微信小程序开发01:XR-FRAME的快速上手
前端·增强现实·trae
叶梅树1 天前
DocsJS npmjs 自动化发布复盘(Trusted Publisher)
前端·npm
一只鹿鹿鹿1 天前
信息安全等级保护安全建设防护解决方案(总体资料)
运维·开发语言·数据库·面试·职场和发展
我命由我123451 天前
Element Plus - Form 的 resetField 方法观察记录
开发语言·前端·javascript·vue.js·html·html5·js
Eward-an1 天前
【算法竞赛/大厂面试】盛最多水容器的最大面积解析
python·算法·leetcode·面试·职场和发展
清空mega1 天前
《Vue3 项目结构详解:components、views、assets、router、stores 到底该怎么理解?》
前端·javascript·vue.js
Trouvaille ~1 天前
【递归、搜索与回溯】专题(七):FloodFill 算法——勇往直前的洪水灌溉
c++·算法·leetcode·青少年编程·面试·蓝桥杯·递归搜索回溯
雨雨雨雨雨别下啦1 天前
Vue——小白也能学!Day6
前端·javascript·vue.js
XPoet1 天前
AI 编程工程化:Hook——AI 每次操作前后的自动检查站
前端·后端·ai编程
難釋懷1 天前
RedisTemplate配置读写分离
前端·bootstrap·html