脚本宝典收集整理的这篇文章主要介绍了学习笔记—Node中模块查找机制,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
日常的学习笔记,包括 ES6、Promise、Node.js、Webpack、http 原理、Vue全家桶,后续可能还会继续更新 Typescript、Vue3 和 常见的面试题 等等。
在学习其他模块之前,我们先要清楚 文件模块中的查找规范机制 。
引用自定义模块时,会自动查找目标目录下的 index.js文件 。
// /jQuery/index.js
module.exports = "jquery"
// /main.js
const jQuery = require('./jQuery')
console.log(jQuery); // jquery
但是如果我们不去定义 index.js,则会出现无法查找文件的问题,也就是报错。
// /jQuery/a.js
module.exports = "jquery"
// /main.js
const jQuery = require('./jQuery')
console.log(jQuery); // Cannot find module './jQuery'
这样我们就需要一个描述文件 package.json
,在文件中有一个 main
属性,可以定义文件入口。
// /jQuery/package.json
{
"main":"./jQuery/a.js"
}
这样我们再重新打印,发现结果被成功打印了出来。
所以我们可以总结一下文件模块的 查找规范:
// 新版node查找流程
│
└───┤ 同名文件
│
│──┤ 同名.js / 同名.json
│
│──┤ 同名文件夹
│
│───┤ pageage.json
│
└───┤ index.js
都没找到,则抛出一个错误。
这就是node的自定义模块查找规范,我们在平时面试的时候可能会遇到这种问题。
比如介绍一下 node的模块查找机制,我们就可以用这种方式去介绍。(目前一般很少有问老版本node的查找机制,一般都会问两种查找机制的区别,感兴趣的可以去查阅相关资料。)
本篇文章由莫小尚创作,文章中如有任何问题和纰漏,欢迎您的指正与交流。 您也可以关注我的 个人站点、博客园 和 掘金,我会在文章产出后同步上传到这些平台上。 最后感谢您的支持!
以上是脚本宝典为你收集整理的学习笔记—Node中模块查找机制全部内容,希望文章能够帮你解决学习笔记—Node中模块查找机制所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。