第四周作业扩展 - import-local源码分析及node模块加载流程源码分析
一、总结
分析入口lerna源码
模块的完整查找流程只会执行一次,执行过后模块会以模块名/查找路径为key,模块真实路径为value缓存
Module._resolveFilename()为node模块加载流程实现核心方法,require等在此基础是进一步封装
import-local以包名(lerna)和入口文件(cli.js)调用resolveCwd.silent(path.join(pkg.name, relativePath))得到lerna源码中cli.js的绝对路径:/Users/snail/Desktop/code/lego/lerna/core/lerna/cli.js
二、import-local源码分析及node模块加载流程源码分析思维导图