环境
- Windows 11 专业版
- HBuilder X 4.65
- 微信开发者工具 Stable 1.06.2412050
背景
在HBuilder X里,运行 -> 运行到小程序模拟器 -> 微信开发者工具,如下图所示:

注:无需事先打开微信开发者工具。
微信开发者工具调试
断点单步调试
在微信开发者工具里可以设置断点,以单步调试代码。具体方法为:调试器 -> Sources -> appContext -> uni-app:// ,然后在里面找到页面文件,比如 index.vue ,然后双击打开文件,在源代码左边的行号处单击即可设置断点,如下图所示:

然后就可以单步调试代码了,常用快捷键:
F8:Resume executionF10:Step overF11:Step intoShift + F11:Step out of current function
此外,在右侧可以看到,有Watch,Call Stack,Breakpoints等信息,和其它IDE环境类似,不再赘述。
修改变量的值
在单步调试时,使用watch,可以查看变量或者表达式的值,但有时我们会希望把变量的值改成指定值。比如下面的 if 语句:
if (x > 0) {
......
} else {
......
}
断点设置在 if 语句,假设当前 x 值为1,因此接下来会走true分支,而我们希望走false分支,所以就要把 x 的值改为0。
要想这么做的话,只需切换到 Source 左边的 Console 页签,在这里可以设置变量的值。
下面看一个完整的例子:

从上图可以看到, cityTime 当前值为 1747880148100 。现在我希望把 cityTime 设置为 1 。
切换到 Console 页签,首先输入 cityTime 并回车,确认其当前值:

然后,直接在命令行给 cityTime 赋值即可:

切换回 Sources 页签,可以看到, cityTime 的值已经变成 1 了:

注:从右边两个红框可以看到, cityTime 的值还是旧值,这可能是因为因为UI上没有刷新的缘故,实际上 cityTime 的值已经变化了。
单步运行第154行,然后切换到 Console 页签,可以看到,实际输出结果是 1 :

Storage
对于Storage的变量,有两种修改方法:
- 方法1:和前面一样,在Console里通过代码设置,比如:
uni.setStorage({
key: 'cityTime',
data: 1,
success: function() {
//
},
})
- 方法2:直接在
Storage页签查看和修改变量:

注:这样修改貌似无效,看着值是修改了,但实际上值并没有变化……不知道是哪里出了问题?

1566

被折叠的 条评论
为什么被折叠?



