node.js的模块化

node.js的模块化

        • 模块化的概念
        • node.js的三种模块

模块化的概念

  1. 什么是模块化??
  • 一个js文件中可以引入另一个js文件的数据。
  1. 为什么要用模块化
  • 防止全局变量污染,文件依赖问问题,可提高代码的复用性
  1. 模块规范
  • CommonJS 规范:nodejs中遵守的就是commonjs规范。
  • ES6 模块化规范:(前后端通用的模块化规范;Node.js、Vue、
    React 中都能使用!)
    CMD 和 AMD 模块化规范(较少使用): CMD–sea.js, AMD-require.js
    UMD 叫做通用模块定义规范(Universal Module Definition),它可以通过运行时或者编译时让同一个代码模块在使用 CommonJs、CMD 甚至是 AMD 的项目中运行。它没有自己专有的规范,是集结了 CommonJs、CMD、AMD 的规范于一身。

node.js的三种模块

  1. 内置模块(由官方提供,例如 fs,path,http)
const fs = require('fs')
const path = require('path')
//可以直接使用
  1. 自定义模块(用户自定义,一个js文件中引入另外一个js文件)
//向多模块共享作用域中的成员
//方法一
module.exports.name = 'zhangsan'
//方法二
exports.name = 'lisi'
//导入  使用require()方法加载模块时,会执行被加载模块中的代码
const moment = require('./XXX/XX')   //此处输入需要引入的js的路径
const dt = moment().format('YYYY-MM-DD HH:mm:ss')
  1. 第三方模块(也就是包,需要先下载)
  • npm包:第三方模块(都是免费开源的,是基于内置模块封装出来的)
    在安装node.js的时候已经安装了npm包,所以可以直接在命令行中输入npm -v可以查看安装的npm版本
    语义化版本规范: 例如 2.24.1
    第一位数字:大版本
    第二位数字:功能版本
    第三为数字:Bug修复版本
//安装包的命令(前一种是简写)
npm i 包名称          //npm install 包名称     
//安装指定版本的包
npm i 包名称@版本号
  • 如何在项目中记录安装了哪些包?

因为node-module文件特别大,为了减少传输时间提高效率,将其添加到.gitignore文件中(忽略)

快速创建package.json
npm init -y
其中dependencies节点专门用来记录安装了哪些包

  1. 安装包

npm i //一次性安装所有的包
npm i 包1 包2 //安装多个包 包与包之间用空格隔开

  1. 卸载包

npm uninstall 包名
写在成功的包会自动将package.json里面dependencies里面移除

  1. 某些包只会在开发项目的阶段用到,项目上线后用不到,则记录到devDependencies里面
npm i webpack -D
npm i webpack --save-dev
  1. 查看当前下的包的镜像源
npm config get registry
  1. 将当前包的镜像源切换为淘宝镜像源
npm config set registry=https://registry.npm.taobao.org/
  1. 检查镜像源是否下载成功
npm config get registry
  1. 安装nrm小工具,用插件安装镜像源,可解决下载包速度慢的问题
npm i nrm -g   //全局可用
  1. 查看
nrm ls
  1. 切换为淘宝镜像源
nrm use taobao

你可能感兴趣的