node知识点总结(五)

104 阅读4分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第22天,点击查看活动详情

前言

大家好呀,我是L同学。在上篇文章node知识点总结(四)中,我们学习了node相关知识点,包括request请求获取用户提交的get参数、request获取用户提交的额post参数、response响应对象、npm等相关知识点。今天,在这篇文章中,我们来学习node的其他知识点,包括全局模块、nodemon模块、本地安装和全局安装区别、更改镜像源、模块化等相关知识点。

全局模块

全局安装的模块,不能通过 require() 加载使用。全局安装的模块,一般都是命令或者工具。安装方法就是在安装模块的命令后面,加 -g

npm i 模块名 -g
# 或
npm i -g 模块名
  • 查看全局安装的模块: npm list -g --depth 0
  • 卸载方法(也是多一个 -g): npm un 模块名 -g
  • 全局安装的模块,在系统盘(C盘):通过命令 npm root -g 可以查看全局安装路径。

nodemon模块

nodemon的作用是代替node命令,启动服务的,当更改代码之后,nodemon会自动帮我们重启服务。

安装nodemon模块命令: npm i nodemon -g

本地安装和全局安装区别

有两种方式用来安装 npm 包:本地安装和全局安装。选用哪种方式来安装,取决于你如何使用这个包。

  • 本地安装: 想把我们用的包,安装到当前本地项目代码中使用。

比如npm i jquery , npm i moment。执行的安装命令(npm i moment) 位置,必须在当前项目根目录下执行。包位置在本地安装的包 => 当前项目下的 node_modules。使用包const moment = require('moment') , const $ = require('jquery')。

  • 全局安装: 想把一个包/库,当成一个工具来使用, 就采用全局安装。

比如npm i -g live-server。可以在任意地方, 都可以执行命令。包位置在C:\Users\用户名\AppData\Roaming\npm。使用包在终端命令行里使用, 不能在代码里。

dependencies作用是保存依赖包的记录。以后如果看到我们项目中 没有node_modules目录,但是有 package.json。说明我们项目是完整的。执行 npm i 会找 package.json 里面的 dependencies,并且安装里面的所有依赖包。执行npm i命令要在 package.json 同级目录。

更改镜像源

镜像源,就是下载安装第三方模块的网站。我们下载的第三方模块都是从国外的npm主站下载的,速度比较慢。淘宝在国内对npm上的第三方模块做了一个备份,也就是说,我们可以从国内下载第三方模块。除了淘宝之外,还有很多其他镜像源。

简单的更改镜像源方法:

  • 全局安装 nrm 的模块

nrm 用于管理镜像源

  • 使用nrm nrm ls 通过这个命令,可以查看可用的镜像源。 nrm use taobao,切换下载模块的网站为淘宝。

模块化

模块化是指解决一个复杂问题时,自顶向下逐层把系统划分成若干模块的过程。 对于整个系统来说,模块是可组合、分解和更换的单元。编程领域中的模块化,就是遵守固定的规则,把一个大文件拆成独立并互相依赖的多个小模块。

把代码进行模块化拆分的好处:

  • 提高了代码的复用性
  • 提高了代码的可维护性
  • 可以实现按需加载
  • etc...

模块化规范就是对代码进行模块化的拆分与组合时,需要遵守的那些规则。例如:使用什么样的语法格式来引用模块 (require('fs'))。在模块中使用什么样的语法格式向外暴露成员。模块化规范的好处在于大家都遵守同样的模块化规范写代码,降低了沟通的成本,极大方便了各个模块之间的相互调用,利人利己。