likes
comments
collection
share

三分钟,了解npm构建工具库流程

作者站长头像
站长
· 阅读数 64

假如我写了一个好用的功能,我也想让其他人通过npm install xxx的方式安装,我该从哪里下手?

当我们打开我们项目的package.json的时候发现,其中会有dependenciesdevDependencies属性,这就是我们打包依赖和开发依赖的模块。是不是有种感觉,一个项目有一个package.json文件,有多个模块,有种无形的力量把优秀的第三方依赖聚集在一起,共同完成了这个项目。

这里就是通过npm和一个个的来将多个第三方模块联系在了一起,npm就是一个包管理器。

一、包

包,是被npm管理的。

1、包结构

  • package.json文件:包描述文件
  • bin:用于存放可执行二进制文件的目录
  • lib:用于存放JavaScript代码的地方
  • doc:用于存放文档的目录
  • test:用于存放单元测试用例的代码

2、包描述文件

npm所有的行为都与包描述文件的的字段息息相关。

最常用的属性有nameversiondescriptionauthorprivatescriptsdependenciesdevDependenciesenginesbrowserslist等。

二、npm

npm,是用来管理包的。

借助npmnode可以和第三方依赖和模块进行很好的结合。

我们先看npm都有哪些操作。

1、查看帮助

npm help

2、安装依赖:

npm install xxxx,一般执行命令后会在当前目录下创建node_modules目录,然后在node_modules目录下创建xxx文件夹,接着将包解压到这个目录下。但是由会根据安装的位置划分为:

  • 全局模式安装:npm install xxx -g
  • 从本地安装:npm install <package.json所在的目录路径>
  • 从非官方渠道安装:npm install xxx --registry=http://***

3、卸载依赖

npm uninstall xxx

三、发布自己的包

以上简单介绍了npm的关系,下面就自己手动写个包,发布到仓库。

1、编写模块

首先在index.js文件中编写功能

// index.js
exports.add = function (a, b) {
    return a + b;
}

再通过npm init的方式在统计目录下按照提示输入信息,生成package.json文件。

{
  "name": "qb-tools",
  "version": "1.0.0",
  "description": "this is a methods libray",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "qb",
  "license": "ISC"
}

现在有了配备了package.json文件的包,开始把本地的包发布到第三方仓库npm中。

首先得有一个账号。

2、注册账号

浏览器输入:npm (npmjs.com),找到sing in按钮按照提示操作即可。

然后在本地添加账号,让本地和远程建立连接。

3、本地添加账号

npm adduser

然后根据提示输入账号、密码和邮箱即可。

现在就可以发布我们自己的包到第三方仓库npm中了。

4、发布包

npm publish

发布结果如下所示。

npm notice
npm notice 📦  qb-tools@1.0.0
npm notice === Tarball Contents ===
npm notice 53B  index.js
npm notice 230B package.json
npm notice === Tarball Details ===
npm notice name:          qb-tools
npm notice version:       1.0.0
npm notice filename:      qb-tools-1.0.0.tgz
npm notice package size:  323 B
npm notice unpacked size: 283 B
npm notice shasum:        *********************************
npm noice integrity:      *********************************
npm notice total files:   2
npm notice
npm notice Publishing to https://registry.npmjs.org/
+ qb-tools@1.0.0

到这里,我们就已经把我们本地的包发布到npm中了。可以打开自己的npm看看结果:

三分钟,了解npm构建工具库流程

5、安装包

你现在就可以在自己的项目中通过npm install qb-tools的方式下载我的工具包了。执行结果为:

6、分析包

当我们不确定是否安装成功时,可以通过执行npm ls的方式查找包:执行结果为

project@1.0.0 E:\learn\npm\project
└── qb-tools@1.0.0

至此,我们就介绍了在npm上发布一个包的全流程。

转载自:https://juejin.cn/post/7187791824440787002
评论
请登录