超实用的Chrome DevTools调试技巧!

网站建设4年前发布
187 0 0
2023030610201738c03c274094fb2aa7e792575939dd5bf3da50433,大家好,我是 CUGGZ。,Chrome DevTools 提供了很多实用功能来调试源代码、捕获元素状态、更新和测试元素属性、模拟各种设备环境等。今天就来学习几个超实用的调试技巧!,在 Chrome DevTools 的 Console 面板中,可以输入一些带 $ 的命令来选择和检查 DOM 元素。,$0​ - $4​ 命令可以用来显示在 Elements 面板中检查的最后五个 DOM 元素,$0​ 返回最近一次选择的元素,$1 返回最近一次之前选择的元素,以此类推。,202303052213545952c1d563027161a9a7677bc155f1a17ca039740,$(selector)​ 返回带有指定的 CSS 选择器的第一个 DOM 元素的引用。这个命令就等同于 document.querySelector() 函数:,2023030522034794652bd80204f754682961714dde599d381cb67792023030610201779e50fc2414f7fbb7dc286c5c07a05066c050f359,$$(selector)​ 返回与给定 CSS 选择器匹配的元素数组。这个命令等同于 document.querySelectorAll() 函数:,20230305220659c40f19935ef435328222855f07e379c705eed32592023030522135634c8dce3027caa4f012704bb22808999009d9a270,在日常开发中,我们会使用 Chrome DevTools 来调试页面,比如修改页面的样式、节点属性等。其为我们提供了复制数据的功能,可以将修改后的内容复制到源代码中。,20230305220349b72822a04e3729a0c1f1672df35e13c216c2e732820230305220350e6793d3333de7b2c92f5479507f2637828d283849,我们可以复制 CSS 规则或声明,甚至可以将内容复制为 JavaScript 键值对:,复制 HTML 内容,右键点击要复制的元素 -> Copy,点击要复制的内容类型即可:,2023030522035041ee25732121a3647da963aa9cab657a2a8a82848,2023030522070172cf6fe4381b957279858886f5977eaeb0f4c0822,Chrome DevTools 支持重新发送 XHR 请求。在和后端进行接口联调时,如果想要重新发送请求,并且参数保持不变,可以直接右键点击要重新发送的 XHR 请求,点击 Replay XHR 即可重新发送该请求:,2023030522070109057f793529e460c1e2911f538517ac8c80e940920230305220353d889ac761df3818d33f967c53db4f344eb2b8b635,对于一个请求,有时需要修改请求参数并重新发送,可以直接在控制台发送请求。只需要先右键点击需要重新发送的 XHR 请求,选择 Copy -> Copy as fetch:,202303052203535406db4049ec2e5d4bc621010d9bfd40aabd431732023030522070233eac77324afbbed8f362466528814adad32e5292,在 Console 面板中粘贴已经复制的请求内容,修改所需参数,按下回车发送请求即可:,20230305220355a53cbc63469da61c6a4493bf569ab4c9fdf1a3466202303052213557416fff52163ca441d273857ad5ad989c38ed5809,Chrome DevTools 提供了一个颜色选择器来设置背景颜色和文本颜色。颜色选择器具有各种功能:颜色选择器具有各种功能,例如,只需在元素样式的颜色显示块上点击即可弹出颜色选择器:,2023030522035827e132472593b5d3c7f922b344b2c1c37589c811020230305220359092183725a5a40b5043998d2ee5de84aad08c1585,可以使用吸管从页面上直接吸取颜色:,20230305220400b49bc5184451cebc057911edaa9e3d9e4dec2d45420230305220401d60f2c56540050c574084019d6bb3816ead172746,可以在 Chrome Devtools 的 Console 面板中输入 monitorEvents() 来监听指定目标事件的信息。该方法有两个参数,第一个参数是要监听的对象。如果未提供第二个参数,所有事件都会返回。要指定要监听的事件,传递一个字符串或字符串数组作为第二个参数。,例如,监听页面 body 上的点击事件:,20230305220403842312f783ac7182c5b56314bd5a740455e53b823,可以调用 unmonitorEvents() 方法来停止监听事件,需要传递一个停止监视对象的参数。例如,停止监听 body 对象上的事件:,202303052207058948dd596bc077cfb161858c285c7f1e87ec2b681,可以在 Coverage 面板中检查页面中没有使用的 CSS 和 JavaScript 代码,可以通过以下步骤来打开 Coverage 面板:,2023030522040624acb5909a118c0f0f255471d381cd07af519f316,点击刷新按钮开始重新加载页面,以测试页面的代码覆盖率:,20230305220705469a46f62c93036e98c948e33e7bdb59cd08de976,检查页面的资源使用情况,点击可以查看哪些代码是没有使用的,可以通过删除那些未使用的代码来最小化 CSS 文件的大小:,20230306120551b3323c346edf41226ca19883243adc1c410912438,对于测试结果,可以进行筛选、过滤、下载等操作。,在 Chrome DevTools 的 Elements 面板中右键点击要引用的 HTML 元素,选择 Store as global variable 即可将其保存为一个变量,其变量名会在 Console 面板中打印出来:,20230306101923c52c80537e7d51dc9a789063d24fc9dd4434f7262,Logpoints (日志点)是一种向控制台提供调试信息的方式,而无需使用 console.log(),这在线上应用调试时会很有用。可以通过右键单击 DevTools 中的 Source 选项卡中的任何行并指定要记录的表达式来添加新的 Logpoint。执行该行时,就会在控制台中获得它的值。,20230305220410a795dfc30c580b764967527a0d5aad4fdb22fb886,使用该功能可以减少调试代码,提高代码的整洁性。并且,线上应用也可以直接添加控制台输出。,实时表达式是一种在表达式更改时显示其值的功能。这有助于追踪代价高昂的表达式(如动画中使用的表达式)或变化很大的表达式(例如,如果正在遍历数组)的问题。它会将 Console 面板里的表达式置顶,并且能随着用户点击的变化,而动态刷新该置顶的表达式。,只需点击下图中眼睛图标,输入一个想要置顶的 JavaScript 表达式即可:,20230305220411d8a5061712250f68d36965fb7adf5f02f4316070120230305220709131aa6d79f2725708303729459f9b618243200562,Chrome DevTools 提供了检查和修改动画的功能。它可以帮助我们播放动画、修改动画时间并分析特定时间范围内的视图。,2023030522041355a24b518639021e33907146c0ef11f420f632356,只需在 More tools -> Animations中打开动画面板进行调试即可:,20230305220415e700a6b80810bd626d3267906e4366d798cb1d131Animation Inspector (动画检查器)分为四个主要部分:,2023030522041834584be82d76d3ccf9536474a05d36772d9570802
© 版权声明

相关文章