[ 前端开发网页调试 | 青训营笔记 ]

119 阅读3分钟

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

使用Chrome Develop Tool调试

作为一个前端开发工程师,没下载个谷歌浏览器都不好意思说自己是混这行的了。在移动开发的过程中,我们是可以使用桌面浏览器(推荐谷歌)进行调试的。尽管移动端网页与桌面端网页有诸多差异,但是说到底它还是一个在浏览器里浏览的HTML网页,所以最常用的还是在桌面借助Chrome调试器。

Chrome自带的Developer Tool对于调试移动端网页来说非常方便,可以通过调整下表所示的几个属性来调整页面。

属性名功能
User Agent设置当前模拟设备的用户代理(UA)
Device metrices设置页面的大小,默认值是模拟设置的大小
Emulate touch events模拟触摸屏事件
Fit in window页面大小是否会根据窗口大小进行适配

优点:无须额外的成本,方便快捷。

缺点:仅仅用来模拟,并不能完全代表移动设备的真实状况。

css 调试

Style 窗格调试

Style 窗格是什么,如下图:

Style窗格

选中dom 元素后,窗格内会显示当前元素的相关样式定义,在对应定义处进行修改,修改会即刻生效

样式文件内调整

style 窗格内,每一处样式定义,都会在右侧标明出处,出处有两种形式:

  • 一种是系统内置,样式内容不可编辑,出处链接不可点击;
  • 另外一种是用户定义,可编辑,点击出处链接,会跳转到DevTools工具的Sources面板,并高亮定位到对应的样式定义处,如果当前样式是定义在html文件中,样式不可编辑,如果打开的是单独的css文件,则可直接在当前样式文件内进行调试修改,如果当前css 文件调整比较多,可以直接将修改完成的样式文件,替换项目里对应文件,即能可视化调整,也能同步完成项目内源码调整。

js 调试

上面说了html调试,说了css 调试,似乎总感觉缺点什么,对,怎么一直没提断点,我们先来看下断点的定义:

调试设置断点可以让程序运行到该行程序时停住,借此观察程序到断点位置时,其变量、寄存器、I/O等相关的变量内容,有助于深入了解程序运作的机制,发现、排除程序错误的根源。

所以断点只是辅助调试的一种手段,一种让线索更加清晰,问题更容易暴露的方法,而在html、css调试时,由于并没有复杂的业务逻辑,代码调试非常直观,所以用不着。

常规调试

这里的「常规调试」,是相对「本地调试」而言,下一章节将具体说明。

可在DevTools Sources面板中可对js 进行调试,Sources面板包括三个部分:

Sources

  • 1、File Navigator 窗格。 此处列出页面请求的每个文件。
  • 2、Code Editor 窗格。 在 File Navigator 窗格中选择文件后,此处会显示该文件的内容。
  • 3、JavaScript Debugging 窗格。 检查页面 JavaScript 的各种工具。 如果 DevTools 窗口布局较宽,此窗格会显示在 Code Editor 窗格右侧。

来看一个谷歌关于Sources面板调试js示例,地址

通过分析代码,我们可以知道,点击求和按钮后,页面会出现2类结果:

  • 两个输入框部分输入,结果显示“Error: one or both inputs are empty.”
  • 两个输入完全输入,结果显示两个数字的和

通过执行代码,部分输入的情况,程序运行结果完全符合我们的预期,不存在问题。