介绍
将一个复杂的程序文件按照一定规则拆分成多个文件。
拆分出的每个文件就是一个模块,模块的内容数据是私有的,不过模块可以暴露内部数据使得其他模块使用。
模块化好处:防止命名冲突、高复用性、高维护性。
模块化的使用
初体验
两个文件:index.js以及me.js
在me.js中定义一个函数,在index.js中使用该函数。
me.js中声明并向外暴露:
//声明函数
function hello() {
console.log('123')
}
module.exports = hello
在index.js中导入并使用:
//导入模块
const hello = require('./me.js')
hello()
以上就通过模块化完成了一个简单功能,接下来会详细讲解相关内容。
导入(引入)模块
const hello = require('./me.js')
对于自己写的模块,括号内部是相对路径。
js与json文件不用加后缀,导入其他类型文件,会以js文件进行处理。
导入nodejs内置模块,如fs、path、http模块,不需要加./、…/。
导入文件夹
首先检测文件夹下的package.json文件中的main文件,如果没有会报错。
这是一个文件夹,内部有一个package.json文件:
文件内容:
app.js的内容:
接着我们来导入module文件夹:
导入后,会自动引入main后面的内容,也就是app.js。
所以运行的结果是: