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

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

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

登陆购买课程后可参与讨论,去登陆

1回答
扬_灵 2021-12-19 09:56:02

同学你好,关于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));
}


  • 提问者 jindong #1

    老师您好,本地命令这里我有点疑问?印象中npm模块可以注册全局命令,会将bin对应的js映射到全局。本地命令如何注册和使用呢?是否可以发我一些相关的文档或者资料,我研究一下

    2021-12-19 23:55:11
  • 提问者 jindong #2

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

    2021-12-20 00:53:37
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师