面试官:你之前的工作发布过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使用的命令。

相关推荐
LHX sir20 分钟前
什么是UIOTOS?
前端·前端框架·编辑器·团队开发·个人开发·web
Gazer_S28 分钟前
【前端状态管理技术解析:Redux 与 Vue 生态对比】
前端·javascript·vue.js
小光学长41 分钟前
基于Vue的图书馆座位预约系统6emrqhc8(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
前端·数据库·vue.js
Y学院1 小时前
vue的组件通信
前端·javascript·vue.js
PairsNightRain1 小时前
React Concurrent Mode 是什么?怎么使用?
前端·react.js·前端框架
小岛前端1 小时前
React 剧变!
前端·react.js·前端框架
UrbanJazzerati1 小时前
一文带你了解定语
面试
teeeeeeemo1 小时前
Webpack 模块联邦(Module Federation)
开发语言·前端·javascript·笔记·webpack·node.js
UrbanJazzerati2 小时前
一文带你了解同位语
面试
岁月宁静2 小时前
AI聊天系统 实战:打造优雅的聊天记录复制与批量下载功能
前端·vue.js·人工智能