TypeError: Cannot read property 'length'
发布于 6 年前 作者 luoxia 5296 次浏览 来自 问答
  • 当前 Bug 的表现(可附上截图)
  • 预期表现
  • 复现路径
  • 提供一个最简复现 Demo

使用了 picker 选择器导致的错误,

onLoad: function (options) {
    let pages = getCurrentPages()
    console.log(pages)
    let prevPage = pages[pages.length - 2]
    wx.setNavigationBarTitle({
      title: prevPage.data.title
    })
 
}
 
 
bindPickerChange(e) {
 
console.log('picker发送选择改变,携带值为', e.detail.value)
 
// this.setData({
 
//   index: e.detail.value
 
// })
 
},

点击 picker 选择器就会报错,

VM100557:5 TypeError: Cannot read property ‘length’ of null

看不懂这个 length 是不是 let prevPage = pages[pages.length - 2]这里的length的错误?

但是加载页面的时候, console.log(pages) 是有值的 ,prevPage.data.title 也获取到值,

只要点击了 picker 就发生上面的错误,


所以不知道这个 picker 是怎么做的????这个 length 错误是 picker 导致 getCurrentPages() 的 length 错误?

还是说 picker 内部有 length 发生了错误??

2 回复

咋解决的啊,在线等

你的picker是怎么渲染的,用的哪种类型,初始数据是什么?可以先检查一下

回到顶部