据说 99% 的人不知道 vue-devtools 还能直接打开对应组件文件?本文原理揭秘

本文介绍了如何使用 Vue Devtools 的 'Open component in editor' 功能,该功能能直接在编辑器中打开对应组件文件。通过源码分析,讲解了报错解决方案,包括确保命令行可以运行编辑器,以及在环境变量中指定编辑器。文章还探讨了 launch-editor 的实现,包括 guessEditor 函数的工作原理,以及如何利用 Node.js 子进程模块执行命令打开文件。
摘要由CSDN通过智能技术生成

1. 前言

你好,我是若川[1],微信搜索「若川视野」关注我,专注前端技术分享,一个愿景是帮助5年内前端开阔视野走向前列的公众号。欢迎加我微信ruochuan12,长期交流学习。

这是学习源码整体架构系列 之 launch-editor 源码(第九篇)。学习源码整体架构系列文章(有哪些必看的JS库):jQueryunderscorelodashsentryvuexaxioskoaredux

本文仓库地址[2]git clone https://github.com/lxchuan12/open-in-editor.git,本文最佳阅读方式,克隆仓库自己动手调试,容易吸收消化。

要是有人说到怎么读源码,正在读文章的你能推荐我的源码系列文章,那真是无以为报啊

我的文章尽量写得让想看源码又不知道怎么看的读者能看懂。我都是推荐使用搭建环境断点调试源码学习哪里不会点哪里边调试边看,而不是硬看。正所谓:授人与鱼不如授人予渔

阅读本文后你将学到:

  1. 如何解决该功能报错问题

  2. 如何调试学习源码

  3. launch-editor-middleware、launch-editor 等实现原理

1.1 短时间找不到页面对应源文件的场景

不知道你们有没有碰到这样的场景,打开你自己(或者你同事)开发的页面,却短时间难以找到对应的源文件。

这时你可能会想要是能有点击页面按钮自动用编辑器打开对应文件的功能,那该多好啊。

vue-devtools提供了这样的功能,也许你不知道。我觉得很大一部分人都不知道,因为感觉很多人都不常用vue-devtools

open-in-editor

你也许会问,我不用vue,我用react有没有类似功能啊,有啊,请看react-dev-inspector[3]。你可能还会问,支持哪些编辑器呀,主流的 vscode、webstorm、atom、sublime 等都支持,更多可以看这个列表 Supported editors[4]

本文就是根据学习尤大写的 launch-editor[5] 源码,本着知其然,知其所以然的宗旨,探究 vue-devtools「在编辑器中打开组件」功能实现原理。

1.2 一句话简述其原理

code path/to/file

一句话简述原理:利用nodejs中的child_process,执行了类似code path/to/file命令,于是对应编辑器就打开了相应的文件,而对应的编辑器则是通过在进程中执行ps x

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值