「Web 调试技术」| 青训营笔记

94 阅读2分钟

这是我参与「第五届青训营 」伴学笔记创作活动的第 10 天

课程重点

  • Elements
  • Console
  • Source
  • Performance
  • Network
  • 真机调试
  • 代理调试
  • 常用工具

Bug与Debug

前端Debug的特点

  • 多平台

    • 浏览器、Hybrid、NodeJS、小程序、桌面应用等
  • 多环境

    • 本地开发环境、线上环境
  • 多工具

    • Chrome devTools、Charles、Spy-Debugger、Whistle、vConsole等
  • 多技巧

    • Console、BreakPoint、sourceMap、代理等

Chrome DevTools

  • 动态修改元素和样式
  • Console
  • Sorce Tab
  • Break Point与Watch
  • Scope与Call Stack
  • Source Map
  • NetWork
  • Application
  • Performance
  • Lighthouse

移动端H5调试

真机调试

IOS

  • 使用Lightning数据线将iPhone与Mac相连
  • iPhone开启Web检查器(设置-safari-高级-开启web检查器)
  • iPhone使用Safari浏览器打卡要调试的页面
  • Mac打开Safari浏览器调试(菜单栏-开发-iPhone设备名-选择调试页面)
  • 在弹出的Safari Developer Tools中调试

Android

  • 使用USB数据线将手机与电脑相连
  • 手机进入开发者模式,勾选USB调试,并允许调试
  • 电脑打开Chrome浏览器,在地址栏输入:chrome://inspect/#devices 并勾选Discover USB devices选项
  • 手机允许远程调试,并访问调试页面
  • 电脑点击inspect按钮
  • 进入调试界面

VConsole

  • 日志(logs):console.log|info|error....
  • 网络(network):XMLHTTPRequest,Fetch,sendBeacon
  • 节点(element):HTML节点树
  • 存储(storage):cookies,localstorage,sessionstorage
  • 手动执行JS命令行
  • 自定义插件
使用代理工具调试

原理:

  • 电脑作为代理服务器
  • 手机通过HTTP代理连接到电脑
  • 手机上的请求都经过代理服务器
  • 以Charles为例:
    • 安装Charles
    • 查看电脑IP和端口
    • 将IP、端口号填入手机HTTP代理
    • Charles允许授权
    • 使用SwitchHosts!软件给Mac电脑配Hosts
    • 手机访问开发环境页面
常用代理工具
  • Charles:适合查看、控制网络请求,分析数据
  • Fiddler:与Charles类似,适合Windows平台
  • spy-debugger:远程调试手机页面,抓包
  • Whistle:基于node实现的跨平台web调试代理工具

总结

本节课围绕前端开发中所遇见的 BUG 出发,讲解作为一名合格的前端开发人员,应该掌握的开发调试知识。为了更好地知悉不同场景下 debug 方法,本课还分为 PC 端与移动端展开解读,本节主要聚焦于 PC 端调试。在讲解完 PC 端调试后,又进一步带来移动端调试,通过对理论拆解,逐步剖析在移动端调试中真机与代理调试的过程步骤,并在还带来有关常用工具的推荐,获益匪浅。