1. 什么是模块化开发?
一个功能就是一个模块,多个模块可以组成完整应用,抽离一个模块不会影响其他功能的运行。
2. Node.js中模块化开发规范
Node.js规定一个JavaScript文件就是一个模块,模块内部定义变量和函数默认情况下在外部无法得到。
模块内部可以使用exports
对象进行成员导出,使用require
方法导入其他模块。
3.exports与require的用法
a模块
//a.js
//在模块内部定义变量
let name = '艾豆子';
//在模块内部定义方法
const hello = name => `大家e好,我是${name}`;
//向模块外部导出数据
exports.name = name;
exports.hello = hello;
b模块
//b.js
//在b模块中导入模块a
let a = require('./a.js');
//输出b模块中的变量
let name = a.name;
//调用b模块中的方法
console.log(a.hello(name));
exports
是module.exports
的别名(地址引用关系),当exports和module.exports指向不同对象时,b模块中require指向module.exports中导出的内容.