介绍Node.js的包管理工具NPM的使用,同时介绍两种调试包的方式。

注册一个包

新建一个文件夹npm-wzutao再此文件夹下进入bash

npm login

登录自己的npm账号,所发布的包在该账号下。
image.png

npm init

初始化该包

也可以快速创建 npm init -y

image.png
然后在该文件夹下新建index.js文件,写入如下测试代码

  1. exports.sum = function() {
  2. var res = 0;
  3. for (var i=0; i<arguments.length; i++) {
  4. res+=arguments[i];
  5. }
  6. return res;
  7. }

发布包

npm publish

image.png
去官网可以搜索到
image.png

npm version

更新版本号
1.0.1版本,注意,是最后一位修改了增1

  1. npm version patch

1.1.0版本,注意,是第二位修改了增1

  1. npm version minor

2.0.0版本,注意,是第一位修改了增1

  1. npm version major

最后再提交到远端npm中

  1. npm publish

package.json文件

项目依赖和开发依赖

  • 项目依赖就是这个产品线上运营所依赖的模块,在文件的dependencies字段

npm install 包名

  • 开发依赖就是项目的开发阶段需要依赖,线上运营阶段不需要依赖的第三方包,称为开发依赖,devDependencies字段

npm install 包名 —save-dev

package.josn

  1. {
  2. "name": "learn-scripts",
  3. "version": "1.0.0",
  4. "description": "",
  5. "main": "index.js",
  6. "scripts": {
  7. "test": "echo \"Error: no test specified\" && exit 1",
  8. "runFile": "node index.js",
  9. "commit": "git status && git add . && git-cz",
  10. "runBashCommand": "git --version && git help -a"
  11. },
  12. "keywords": [],
  13. "author": "",
  14. "license": "ISC"
  15. }

package-lock.json文件

  • 锁定包的版本,确保再次下载时不会因为包版本不同而产生问题
  • 加快下载速度,因为该文件中已经记录了项目所依赖第三方包的树状结构和包的下载地址,重新安装时只需下载即可,不需要做额外的工作

    本地调试npm包的问题

    相对路径测试所开发的npm包

    适合项目所需的某一个npm包

比如a文件夹下有npm包b文件夹和测试插件的c文件夹,那么在c文件夹下使用npm i ../b命令来下载本地开发的npm包。

npm link链接全局测试

适合脚手架类型的npm包

image.png
node全局包目录如下:其实就是链接使用一下而已
image.png

jest测试框架

适合各种项目,不仅是npm包,vue项目等也需要这种测试工具