五、Node.js中模块加载机制
5.1模块查找规则-当模块拥有路径但没有后缀时
require('./find')
- require方法根据模块路径查找模块,如果是完整路径,直接引入模块。
- 如果模块后缀省略,先找同名JS文件,再找同名JS文件夹
- 如果找到了同名文件夹,那么则会在该文件夹中找jindex.js文件
- 如果文件夹中没有index.js,则会去当前文件夹中的package.json文件中查找main选项中的入口文件
- 如果找指定的入口文件不存在或没有指定入口文件,此时便会报模块没有被找到的错误
请看示例
首先我将创建一个名为modulefindRules的文件夹,并在当中创建一个名为require.js的文件,我将在这个文件当中对其他模块进行引用,以验证模块的查找规则。接着我再创建一个名为find.js的文件,并写入一些输出代码,这个文件便是我们要查找的模块。