nodejs项目实战教程04——npm相关概念及其使用

以md5这个包为例:在包的入口文件能够看到引用的其他模块

在这里插入图片描述

但是我们通常可以直接通过包的package.json文件查看包的主文件入口以及相关依赖模块等信息

在这里插入图片描述

2. npm

======================================================================

npm是随同Nodejs一起安装的包管理工具,我们可以通过npm命令下载各种各样的包,这些包的源代码我们可以在https://www.npmjs.com/找到。目前为止,npm仍然是世界上最大的开放源代码的生态系统,它的使用场景有以下3种:

(1)允许用户从npm服务器下载别人编写的第三方包到本地使用。(这也是开发者最经常使用的功能)

(2)允许用户从npm服务器下载并安装别人编写的命令行程序(工具)到本地使用。(比如前面安装的nodemon或者supervisor)

(3)允许用户将自己编写的包或者命令行程序上传到npm服务器供别人使用。(可以参考我之前写的一篇文章《从零开始写node包,并完成发布、下载、使用和删除(最完整版)》

3. npm常用命令

==========================================================================

1.安装模块(包)

// ModuleName指代包的名称

npm install ModuleName

比如安装md5软件包,我们可以使用 npm install md5 进行下载,另外install在此时可以简写为 i ,即 npm i md5 同样可以安装md5模块

2.安装指定版本的包

npm install ModuleName@版本号

3.查看包的版本号

(1)查看当前包的所有历史版本号

npm view ModuleName versions

以md5软件包为例:

在这里插入图片描述

(2)查看当前包的最新版本

npm view moduleName version

以md5软件包为例:

在这里插入图片描述

(3)查看当前包的最新版本及更多信息

npm info moduleName

以md5软件包为例:

在这里插入图片描述

3.查看本地当前目录下安装的node包

npm list

为了说明,先安装md5和silly-datetime两个软件包,再执行 npm list

在这里插入图片描述

同样,也可以直接在node_modules平级的package.json文件中的dependencies中看到下载的包(根据翻译,此时也可以称为依赖)

4.卸载模块

npm uninstall ModuleName

以silly-datetime包为例:

在这里插入图片描述

可以看到package.json中的依赖项和mode_modules的依赖文件夹都已经删除,有时候需要刷新一下文件夹。

当需要删除的包过多时,我们还可以通过删除package.json文件中的dependencies中的需要删除的包和整个node_modules文件夹,然后再重新 npm i 下载整个项目的包。

5.安装整个项目的包

在第一次下载项目的时候,通常因为考虑到文件大小的问题,上传者不会上传node_modules文件夹,所以我们就需要通过package.json文件重新下载node_modules中的依赖。进入到整个项目的package.json的上一级目录,执行:

npm i

5.生成package.json

我们使用 npm i moduleName 命令安装依赖的时候也会自动生成package.json文件。

npm init --yes

6.查看当前npm版本

npm -v

在这里插入图片描述

4. package.json

===============================================================================

创建package.json

npm init

或者

npm init --yes

我们在安装依赖的时候 npm i moduleName ,也会自动生成package.json文件。那么这两种生成package.json的方式有什么不同呢?

4.1 安装依赖生成的package.json文件


总结

=============================================================

从转行到现在,差不多两年的时间,虽不能和大佬相比,但也是学了很多东西。我个人在学习的过程中,习惯简单做做笔记,方便自己复习的时候能够快速理解,现在将自己的笔记分享出来,和大家共同学习。

个人将这段时间所学的知识,分为三个阶段:

第一阶段:HTML&CSS&JavaScript基础

第二阶段:移动端开发技术

第三阶段:前端常用框架

  • 推荐学习方式:针对某个知识点,可以先简单过一下我的笔记,如果理解,那是最好,可以帮助快速解决问题;如果因为我的笔记太过简陋不理解,可以关注我以后我还会继续分享。

  • 大厂的面试难在,针对一个基础知识点,比如JS的事件循环机制,不会上来就问概念,而是换个角度,从题目入手,看你是否真正掌握。所以对于概念的理解真的很重要。

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值