iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何调试React源码
  • 325
分享到

如何调试React源码

2023-07-05 19:07:59 325人浏览 泡泡鱼
摘要

这篇文章主要讲解了“如何调试React源码”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何调试React源码”吧!clone React将Reactclone到本地,并安装依赖.git&n

这篇文章主要讲解了“如何调试React源码”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何调试React源码”吧!

clone React

将Reactclone到本地,并安装依赖.

git clone https://GitHub.com/facebook/react.git

编译项目

如果只是通过简单的yarn build,并不会生成sourcemap, 这不是我们想要的,我们需要编译出现代编辑器所需的sourcemap进行映射到实际源码进行调试。

当前react项目并无法通过简单增加参数生成sourcemap,我们需要修改scripts/rollup/build.js下的部分配置 

①: 修改 sourcemap 为 true②:注释部分无法生成sourcemap的插件

ok,看起来很多,但其实大致都连在一起(353-355, 387-415), 注释掉了几个插件,此时我们可以进行build了

yarn build

注意: 如果build失败,提示你需要安装jdk,根据报错安装即可。

进行debugger

我们根据官方文档得知基础开发文件目录在 /fixtures/packaging/babel-standalone/dev.html中,于是我们根据该html先进行简单的debug配置。

vscode

创建一个launch.JSON

修改launch.json配置

{  // 使用 IntelliSense 了解相关属性。   // 悬停以查看现有属性的描述。  // 欲了解更多信息,请访问: Https://Go.microsoft.com/fwlink/?linkid=830387  "version": "0.2.0",  "configurations": [    {      "type": "chrome",      "request": "launch",      "name": "Open dev.html",      // 这里路径可能不一样 做统一调整 修改为如下      "file": "${workspaceFolder}/fixtures/packaging/babel-standalone/dev.html"    }  ]}

然后在源码打上断点,点击打开debug即可看到运行到源码成功.

注意:此时我们已经有了sourcemap,直接在/packages/react-dom或者/packages/react会运行到代码打上断点

webstrom

WEBstrom的十分简单,在dev.html右键进行调试dev.html即可

如上面的案例已经满足你的大部分的源码调试需求,并且我们也可以通过增加一些组件或者hook来进行调试

如果你实在想在真实项目中进行源码阅读,可以继续往下阅读。

在create-react-app中debug

我们平时大多都基于create-react-app或者vite来运行项目,我们可以通过npm link来进行对源码的链接。

上面的案例适合react开发者使用并且已经满足你的小部分需求,但是我们平时大多都基于create-react-app或者vite来运行项目,我们可以通过npm link来链接一下即可。

①: 创建一个create-react-app项目

②: 在React项目中将 react,react-dom链接到全局.

注意: 需要根据你实际当前处于的位置去执行,总而言之就是到build/node_modules/reactbuild/node_modules/react-dom分别执行npm link就行啦.

cd build/node_modules/react && npm link

再把react-dom也link吧.

cd .. && cd react-dom && npm link

③: 在create-react-app的项目中link react与react-dom

 npm link react react-dom

大功小成,接下来开始正式的debugger.

vscode如何debugger

官方已经给出部分文档, 参考文档: 文档

  • 先启动项目 yarn start

  • 增加launch.json配置:  文档

注意:
1、如果你项目端口进行了修改,需要把上方的端口也做修改.
2、官方提供的是edge浏览器,如果你想改谷歌浏览器只需要把type修改为chrome

笔者的配置如下:

{  "version": "0.2.0",  "configurations": [    {      "type": "chrome",      "request": "launch",      "name": "调试creat-react-app源码",      "url": "http://localhost:3000",      "webRoot": "${workspaceFolder}"    }  ]}

  • 找个位置打上断点进行调试③、④为我打上断点的位置,点击 ⑤ 即可看到进入源码啦(可能要多点几下)

感谢各位的阅读,以上就是“如何调试React源码”的内容了,经过本文的学习后,相信大家对如何调试React源码这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

--结束END--

本文标题: 如何调试React源码

本文链接: https://www.lsjlt.com/news/354920.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何调试React源码
    这篇文章主要讲解了“如何调试React源码”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何调试React源码”吧!clone React将Reactclone到本地,并安装依赖.git&n...
    99+
    2023-07-05
  • React源码调试方式
    目录正文断点调试搜索定位Chrome Devtools 调试sourcemapnpm 下载react包插件注释调试 React 最初源码关联 react 源码项目总结正文 什么?调试...
    99+
    2022-11-13
    React 源码调试 React调试
  • PHP如何用gdb调试源码
    这篇文章主要介绍了PHP如何用gdb调试源码的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇PHP如何用gdb调试源码文章都会有所收获,下面我们一起来看看吧。php编译时有一个debug模式,这个模式会关闭内存优...
    99+
    2023-07-04
  • 怎么调试React源码?多种工具下的调试方法介绍
    怎么调试React源码?下面本篇文章带大家聊聊多种工具下的调试React源码的方法,介绍一下在贡献者、create-react-app、vite项目中如何debugger React的真实源码,希望对大家有所帮助!clone React将R...
    99+
    2023-10-22
    React.js Visual Studio Code WebStorm
  • react源码层分析协调与调度
    目录requestEventTimerequestUpdateLanefindUpdateLanelanePriority LanePrioritycreateUpdate...
    99+
    2022-11-13
    react协调与调度 react协调 react调度
  • spring framework源码调试技巧
    目录1. 获取spring-framework源码2. 导入到IDEA2.1 预编译spring-oxm2.2 导入到Idea3 添加用于测试的SpringMVC项目Module3....
    99+
    2024-04-02
  • 如何使用Clion搭建PHP源码调试环境
    本文主要介绍分析源码的方式,其中包含环境的搭建、分析工具的安装以及源码调试的基本操作。 一、 工具清单 PHP7.1.10 GDB Clion 二、 源码下载及安...
    99+
    2024-02-27
  • 怎么用VSCode调试React Vue代码
    这篇文章主要介绍了怎么用VSCode调试React Vue代码的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用VSCode调试React Vue代码文章都会有所收获,下面我们一起来看看吧...
    99+
    2023-07-02
  • OpenJDK源码调试图文教程
    目录前言虚拟机的安装WMware虚拟机安装Ubuntu系统镜像安装Ubuntu系统设置网络设置共享文件夹设置OpenJDK编译编译流程Ubuntu下安装IdeaHotSpot源码调试...
    99+
    2024-04-02
  • numpy C语言源代码调试(三)
    鉴于ddd过于简陋,希望找一个新一些的调试工具,看到有很多人推荐gdbgui,这是一个非常新的调试工具,前端使用浏览器,现在采用这一架构的软件越来越多,可以完全不必依赖庞大的gui类库,安装使用比较方便。 开始使用gdbgui遇到了一些困...
    99+
    2023-01-31
    源代码 语言 numpy
  • 使用源链接对ASP.NETCore源代码进行调试
    在Visual Studio 2017中可以通过符号以及源链接,非常方便对 ASP.NET Core 2.0中源代码进行调试。在这篇文章中,我们将重点介绍如何使用源链接对ASP.NE...
    99+
    2024-04-02
  • RocketMQ源码本地搭建调试方法
    目录1 GitHub源码2 启动Namesrv3 启动Broker4 启动Producer5 启动Consumer6 总结1 GitHub源码 git clone https://g...
    99+
    2023-01-28
    RocketMQ源码本地搭建调试 RocketMQ源码 RocketMQ源码调试
  • Hadoop源码分析四远程debug调试
    1、 hadoop远程debug 从文档(3)中可以知道hadoop启动服务的时候最终都是通过java命令来启动的,其本质是一个java程序。在研究源码的时候debug是一种很重要的...
    99+
    2024-04-02
  • vscode调试gstreamer源码的详细流程
    目录1. 安装vscode插件2. 配置文件修改2.1 自定义c_cpp_properties.json2.2 自定义tasks.json文件2.3 Debug3. Makefile...
    99+
    2023-01-05
    vscode调试gstreamer gstreamer源码 vscode调试
  • 深入了解PHP:用gdb调试源码
    本篇文章给大家带来了关于PHP的相关知识,其中主要介绍了关于使用gdb调试源码的相关内容,下面一起来看一下,希望对大家有帮助。php编译时有一个debug模式,这个模式会关闭内存优化,提示内存泄露,屏蔽调用栈优化可以让我们看到完整的php ...
    99+
    2023-05-14
    php
  • 如何调试 PHP 异步代码
    调试 php 异步代码的工具包括:psalm:静态分析工具,可发现潜在错误。parallellint:检查异步代码并提供建议的工具。xdebug:用于调试 php 应用程序的扩展,可通过...
    99+
    2024-05-11
    调试 php
  • 如何使用PySnooper调试代码
    本篇内容介绍了“如何使用PySnooper调试代码”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 快速安装执行下面这些命令进行安装 Py...
    99+
    2023-06-15
  • 如何使用VS代码调试
    小编给大家分享一下如何使用VS代码调试,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Visual Studio 2005中,给程序员提供了十分强大和便捷的VS代码...
    99+
    2023-06-17
  • 如何在PHP中调试代码
    在开发PHP应用程序时,经常会遇到需要调试代码的情况。调试是解决程序问题,找出代码中的错误以及改进程序性能的必要步骤。在PHP中,调试使用的是调试器。 本文将介绍如何在PHP中使用调试器调试代码。一、配置调试环境在开始调试之前,需要配置调试...
    99+
    2023-05-23
    Debug phpstorm Xdebug
  • 如何远程调试Python代码
    这是一篇小记。平时使用python写的代码对外部依赖性都不复杂,这些代码在本地调试,运行没问题之后,就可以放到生产去跑了。然而,最近的一个项目,由于使用了一些内部服务,需要连接到内部的环境进行调试。如果每次都修改代码之后,发布一次到内部环境...
    99+
    2023-01-31
    代码 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作