成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

React Dev Inspector, 提升開發(fā)效率的神器!

開發(fā) 前端
本文要給大家?guī)硪粋€(gè)非常非常非常好用的插件!聽說牛逼的人都在用它!這款插件防脫發(fā)效果非常非常好!是什么呢?讓我們揭曉吧!

這一期,我邀請(qǐng)到了字節(jié)跳動(dòng)數(shù)據(jù)平臺(tái)的腿長(zhǎng)一米八sonacy小哥哥。他要給大家?guī)硪粋€(gè)非常非常非常好用的插件!聽說牛逼的人都在用它!這款插件防脫發(fā)效果非常非常好!是什么呢?讓我們揭曉吧!

  1. 有沒有遇到過剛到公司,接手項(xiàng)目就去排bug或者一個(gè)小需求,因?yàn)轫?xiàng)目太復(fù)雜,你找不到你要修改的對(duì)應(yīng)文件位置?

  2. 有沒有遇到看到別人項(xiàng)目,想看看實(shí)現(xiàn)卻因?yàn)轫?xiàng)目結(jié)構(gòu)太深,而花了1個(gè)小時(shí)以上才找到你想要的地方。

react-dev-inspector(https://github.com/zthxxx/react-dev-inspector)就是為了這些目的而誕生的。

它的神奇之處就在于,可以從頁(yè)面上識(shí)別react組件,直接跳轉(zhuǎn)到本地ide的代碼片段上,厲害吧

好好研究一下

[[354097]]

安裝

  1. npm i -D react-dev-inspector 

使用和配置

可以自定義開關(guān)鍵值,或者在devtool里面通過window. REACT_DEV_INSPECTOR_TOGGLE ()開啟

<Inspector> 組件屬性

ts類型定義文件在 react-dev-inspector/es/Inspector.d.ts

umi3插件

webpack插件

示例

代碼: https://github.com/zthxxx/react-dev-inspector/tree/master/site

演示: https://react-dev-inspector.zthxxx.me

原理

1. 如何跳轉(zhuǎn)到指定文件的line?

  • react官方瀏覽器插件有相關(guān)能力,可惜他會(huì)跳轉(zhuǎn)到chrome source中,利用的是v8的api,inspect(xxx), 這里顯然不是我們想要的結(jié)果

  • 最簡(jiǎn)單來說,在create-react-app中,當(dāng)出現(xiàn)錯(cuò)誤后,會(huì)出現(xiàn)一層error overlay,點(diǎn)擊對(duì)應(yīng)的錯(cuò)誤棧,就會(huì)跳轉(zhuǎn)到對(duì)應(yīng)的地方

  • 通過查看對(duì)應(yīng)源碼,在react-dev-utils(https://github.com/facebook/create-react-app/blob/master/packages/react-dev-utils/launchEditorEndpoint.js)中能找到對(duì)應(yīng)的詳細(xì)實(shí)現(xiàn)。

  • 以vscode為例子,就是在錯(cuò)誤棧找到相關(guān)信息,在dev server層增加一個(gè)createLaunchEditorMiddleware,點(diǎn)擊后在middleware層執(zhí)行 code xxx.js的指令就可以,詳細(xì)指令可以查看相關(guān)文檔

2. 如何獲取到react組件的相關(guān)信息

  • 這里采取的方案是webpack loader。通過ast遍歷,獲取相關(guān)JSXOpeningElement的相關(guān)file,line,column信息。把這些信息綁定在了指定dom的data attributes上,這樣你在hover或者click的時(shí)候就能獲得對(duì)應(yīng)組件的相關(guān)信息了。

  • 查找組件的displayName,這里利用react fiber架構(gòu)在dom上綁定__reactInternalInstance$屬性的特點(diǎn),通過其type.displayName獲取組件的displayName,如果找不到則遞歸找其return父組件

結(jié)語(yǔ)

github項(xiàng)目(https://github.com/zthxxx/react-dev-inspector),歡迎大家試用

 

責(zé)任編輯:張燕妮 來源: 豆皮范兒
相關(guān)推薦

2020-08-11 08:11:40

JavaScript開發(fā)技術(shù)

2024-09-06 08:02:52

2020-09-13 13:30:01

命令開發(fā)代碼

2023-11-22 08:26:03

HutoolJava工具集

2018-01-19 09:00:37

2024-06-13 09:50:45

2019-11-27 10:08:36

程序員技能開發(fā)者

2025-02-27 09:45:47

2021-04-18 18:58:16

JRebelJVM插件

2022-06-28 10:58:21

工具Java

2020-03-29 11:46:16

前端開發(fā)前端工具

2018-02-06 11:10:27

iOS開發(fā)Xcode快捷鍵

2024-08-22 14:30:32

前端開發(fā)VS Code

2022-05-27 08:40:27

java工具

2025-01-03 16:47:02

Ansible自動(dòng)化運(yùn)維DevOps

2025-06-30 02:44:00

SpringBoot開發(fā)優(yōu)化

2018-01-19 22:36:23

idea插件編碼

2009-06-05 15:04:36

Eclipse代碼模版

2022-04-20 09:26:08

Mock前端開發(fā)工具

2020-07-25 19:38:54

JavaScriptJavaScript庫(kù)Web
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚洲精品一区二区三区免 | 毛片网络 | 久久精品视频9 | av特级毛片 | 亚洲欧美激情视频 | 久久精品一区二区三区四区 | 男女视频在线免费观看 | 欧美天堂在线观看 | 日韩福利 | 性一区 | 国产一区二区精品在线观看 | 丁香婷婷在线视频 | 伊人免费在线 | 一级日批片 | 真人女人一级毛片免费播放 | 精品亚洲一区二区三区 | 毛片在线看片 | 欧美日韩一卡 | 久久国产电影 | 免费黄色片在线观看 | 欧美午夜一区 | 波波电影院一区二区三区 | 一级a性色生活片久久毛片波多野 | 午夜丰满寂寞少妇精品 | 亚洲欧美日韩精品久久亚洲区 | 欧美aaaaaaaa | 久久99精品视频 | 久久国产区 | 91国自视频| 日韩在线一区二区三区 | 一区二区在线不卡 | 日韩三级 | 人人干人人玩 | 日韩欧美一区二区三区四区 | 日干夜干 | 91 久久 | 亚洲精品乱码久久久久久9色 | 精品久久久网站 | 波多野结衣先锋影音 | 欧美精品一区在线发布 | 欧美在线一区二区三区 |