前言:
现在做前端开发,引用一些npm包是很常见的操作,但是其实发布一个npm包,也不是什么高大尚,晦涩难懂的事情,其实在我我看来,npm包,跟我们组件化,模块化是异曲同工,无非就是我们export出来的一个模块,这个模块可以是单独的功能模块,也可以是我们的基础公用模块,只不过这个模块与其他的业务代码的耦合性低,独立的可以拆分出来做复用。
1、远端注册npm账号;
2、本地代码开发加发布
1、本地代码开发(跟我们普通项目开发一样)
npm init
初始化一个package.json
此时的配置文件也比较简单,只需配置 1、`npm`包名,准备用的名字现在`npm`搜索一下,已经存在的就不能用了; 2、版本号`version`,每次发布版本号都需要更新,不然发布不成功; 3、对外`export`的文件路径 4、也可以放上项目所在`github`地址及作者名 5、`description`和`keywords`比较利于`SEO`,不过这些都不是必需项。
- 只有npm注册完后,才能登录,不然没有用户名和密码。在命令窗口运行npm adduser(npm login)(登陆npm),会提示你输入用户名和密码;
这就是一个简陋的
npm
包的架子,跟我们平常的项目一样,不过暴漏出去给别人用而已。直接发布即可使用,终端npm publish
那么问题来了。如何更新自己写的npm包(模块),我们已经在npm中发布了一个1.0.0版本的包;
1、本地更新版本号
比如我想来个1.0.1版本,注意,是最后一位修改了增1,那么命令
:npm version patch 回车就可以了;
比如我想来个1.1.0版本,注意,是第二位修改了增1,那么命令
:npm version minor 回车就可以了;
比如我想来个2.0.0版本,注意,是第一位修改了增1,那么命令
:npm version major 回车就可以了;
2、修改远端的版本,提交到远端npm中:
npm publish
等邮箱接收到npm发布成功的邮件以后,打开npm官网,搜索自己的
npm包名
3、开发并发布npm包解析
本地代码的功能开发什么都没写。
代码压缩、
单元测试、
readme都没写,
别人不知道怎么用也不敢用。下面一步步完善。
4、npm常用命令
npm命令 | 含义 |
---|---|
npm -v | npm 安装的版本 |
npm init | 初始化一个package.json 文件 |
npm install moduleName | npm 安装的模块 |
npm -v | npm 安装的版本 |
npm root | 查看当前包的安装路径 |
npm root -g | 查看全局的包的安装路径 |
npm list | 查看当前目录下已安装的node 包 |
1、npm install -g 将包安装到全局环境中
2、npm install –save 信息写入package.json,并自动把模块和版本号添加到dependencies部分
3、npm install –save -dve 信息写入package.json,并自动把模块和版本号添加到devdependencies部分
至于配置文件区分devdependencies和dependencies, 是用于区别开发依赖模块和产品依赖模块,以我见过的情况来看 devDepandencies主要是配置测试框架, 例如eslint。