用户工具

站点工具


mina:debug

7.小程序调试

1. console.log(e)

写小程序时可以利用console.log(e)来查看传值情况并使用,然后就可以在调试器中看到传值情况。小程序砖块(二)利用console.log(e)查看和使用事件传值

xxx:function(e){
    console.log(e)}//在调试器中看到传值情况

例子:在index.js的事件处理函数

getUserInfo: function(e) {
    console.log(e)
    app.globalData.userInfo = e.detail.userInfo
    this.setData({
      userInfo: e.detail.userInfo,
      hasUserInfo: true
    })
  }

此时我们更改上面的事件处理函数

getUserInfo: function(e) {
    // console.log(e)
    console.log(e.currentTarget.offsetTop) //打印出数据
    app.globalData.userInfo = e.detail.userInfo
    this.setData({
      userInfo: e.detail.userInfo,
      hasUserInfo: true
    })
  }

编译后调试器出现了

e.currentTarget.offsetTop 这正是我们上面看到的offsetTop的值

总结:

  1. function(e)传值
  2. console.log(e)查看事件传的值有哪些
  3. e.aaa调用值

:?: console.log(“data:”+ data) 与 console.log(data)

console.log("data:"+ data)  输出 data:[object Object]     不带解析
console.log(data)  输出 {retCode: 0, retMsg: "SUCCESS", data: null}    带解析

:?: 微信小程序console打印数据问题

微信小程序中如果res.data数据是一个json格式数据。
console.log(res.data) ()中不拼接其他字符串直接打印的话,可以打印数据
如果()中拼接了字符串console.log("===data===" + res.data)??
这样打印出了是只会打印一个对象名称,不会打印数据。
解决方法:console.log("===data===" + JSON.stringify(res.data));

2. 单步调试

2.1 断点

打断点 : 在想要它停下来的地方打上调试断点。微信小程序里面的单步调试和变量查看

  • 事件必须发生才可以在调试的时候断点,如果设置断点的地方没有点击事件,就不会暂停。
  • 一般是打那种.js后面带[sm],如index.js[sm],非index.js

mina/debug.txt · 最后更改: 2020/08/22 12:05 由 sabertoy