这一期,我邀请到了字节跳动数据平台的腿长一米八sonacy小哥哥。他要给大家带来一个非常非常非常好用的插件!听说牛逼的人都在用它!这款插件防脱发效果非常非常好!是什么呢?让我们揭晓吧!
有没有遇到过刚到公司,接手项目就去排bug或者一个小需求,因为项目太复杂,你找不到你要修改的对应文件位置?
有没有遇到看到别人项目,想看看实现却因为项目结构太深,而花了1个小时以上才找到你想要的地方。
react-dev-inspector(https://github.com/zthxxx/react-dev-inspector)就是为了这些目的而诞生的。
它的神奇之处就在于,可以从页面上识别react组件,直接跳转到本地ide的代码片段上,厉害吧
- npm i -D react-dev-inspector
可以自定义开关键值,或者在devtool里面通过window. REACT_DEV_INSPECTOR_TOGGLE ()开启
<Inspector>
组件属性ts类型定义文件在 react-dev-inspector/es/Inspector.d.ts
代码: https://github.com/zthxxx/react-dev-inspector/tree/master/site
演示: https://react-dev-inspector.zthxxx.me
react官方浏览器插件有相关能力,可惜他会跳转到chrome source中,利用的是v8的api,inspect(xxx), 这里显然不是我们想要的结果
最简单来说,在create-react-app中,当出现错误后,会出现一层error overlay,点击对应的错误栈,就会跳转到对应的地方
通过查看对应源码,在react-dev-utils(https://github.com/facebook/create-react-app/blob/master/packages/react-dev-utils/launchEditorEndpoint.js)中能找到对应的详细实现。
以vscode为例子,就是在错误栈找到相关信息,在dev server层增加一个createLaunchEditorMiddleware,点击后在middleware层执行 code xxx.js的指令就可以,详细指令可以查看相关文档
这里采取的方案是webpack loader。通过ast遍历,获取相关JSXOpeningElement的相关file,line,column信息。把这些信息绑定在了指定dom的data attributes上,这样你在hover或者click的时候就能获得对应组件的相关信息了。
查找组件的displayName,这里利用react fiber架构在dom上绑定__reactInternalInstance$属性的特点,通过其type.displayName获取组件的displayName,如果找不到则递归找其return父组件
github项目(https://github.com/zthxxx/react-dev-inspector),欢迎大家试用
注:本文为我最近阅读《微服务架构设计模式》的一点感悟,我不准备详细去写对该...
创建了普通快照后,您可以将普通快照从一个地域复制到另一个地域,复制后的快照...
Anti-DDoS流量清洗服务目前仅支持对部署在华为云的业务提供防护,对于部署在非华...
作者:闲鱼技术——树城 背景 闲鱼作为国内最大的二手交易电商平台,有着验货宝/...
作者 | 烛衡 来源 | 阿里技术公众号 利用缓存做性能优化的案例非常多,从基础的...
闭包 Closure 在某些编程语言中也被称为 Lambda 表达式 是能够读取其他函数内部...
.shop电商 域名 的德国合作注册商InterNetX和 域名交易 平台Sedo在2020年2月联名...
云已成趋势,未来相信会有越来越多的IT服务,直接在云上创建、部署和优化。这样...
新冠疫情对员工的影响根据其资历、年龄和所在的地理位置而有所不同 企业高管比员...
12月30日 山东师范大学-阿里云高校认证中心成立暨揭牌仪式于长清湖校区文昌楼108...