老师您好,请教个关于import-local的问题

来源:4-12 import-local执行流程深度分析

jindong

2021-12-18 10:43:16

1、根据对课程的理解,我理解的import-local的作用是:import-local可以检测当前项目的node_modules下是否存在某个命令,如果全局node_modules和项目局部node_modules都安装了同一个命令,import-local可以自动切换到项目局部node_modules下的命令去执行。不知我理解的对不?还请老师指导

2、第二个问题想请教下import-local是怎么方便调试的,根据我的理解,import-local是将全局node_modules的命令切换到项目局部node_modules下的命令去执行,局部node_modules也是不能修改的,并不是切换到命令所在源码去执行,从这来看调试也不是很方便。所以想请教下import-local是怎么方便调试的?还是说有什么办法可以将命令切换到所在源码去执行?

写回答

1回答

扬_灵

2021-12-19

同学你好,关于import-local的理解是正确的,第二个问题'import-local是将全局node_modules的命令切换到项目局部node_modules下的命令去执行' 这里import-local并不是自动执行的需要我们在项目进行使用判断的。import-local是根据传递的__filename去寻找判断是否存在本地命令如果存在就会执行本地的否则执行全局的。

const importLocal = require('import-local');
if (importLocal(__filename)) {
require('npmlog').info('cli', '正在使用 imooc-cli 本地版本');
} else {
require('../lib')(process.argv.slice(2));
}


0
hindong
hp>老师您好,我刚试了一下,我在一个项目下局部安装了一个命令,通过webstorm的命令行工具就可以执行对应命令,并且是打开当前项目的情况下可以执行。但是通过系统自带的命令行工具,即便是定位到项目所在的文件夹,也无法执行局部安装的命令。请问这是什么原因呢?

h021-12-20
共2条回复

2024版 Web前端架构师

2024版 ,前端高手课!全局架构思维/系统培养大厂P7技术专家/中小厂前端Leader

1125 学习 · 2255 问题

查看课程