1.node有一个简单的模块加载系统,遵循common.js规范,node中文件和模块是一一对应的(每一个文件被视为一个模块)
2,原理:node在加载js文件的时候,自动给js 文件包装上定义模块的头部和尾部
参数说明:
(1)exports,当前模块对外输出 {}
(2)require 是一个函数,可以加载其他模块进来 fn()
(3)module 当前模块的引用,通过此对象可以控制当前模块对外的行为和属性等 {exports,paths}
(4)filename 前模块的文件名称---解析后的绝对路径
(5)dirname当前模块的文件夹名称
3.如何加载模块
在模块内,我们可以通过require函数(此函数由nodejs自动传入,在模块内可以直接用)来加载js文件模块、node内置模块等。require函数需要传入要加载的模块的名字或者是文件名或者目录。
引入模块的方式(四种)
(1)引入文件模块 (文件可以绝对路径和相对路径)
const one = require('./one.js');
one == one.js 里面的exports.show
使用 one.show();
(2)引入node内置模块
const path = require('path');
(3)引入文件夹,需要在package.json 里面找main配置的入口函数,加载文件时候,默认加载该入口文件
比如con文件夹里面有index.js ,而且main设置为index.js
const con = require('./com')就会加载con下面的index.js
(4)自定义模块,也就是从npm.com 网站,通过npm install 安装到node_modules里面
const gulp = require('gulp');