在组件中获取当前page的路由参数为undefined
发布于 6 年前 作者 wzeng 14127 次浏览 来自 问答

我在__组件中__获取当前页面的路由参数options时,返回的是undefined

Component({
  attached() {
    let pages = getCurrentPages()
    let page = pages[pages.length - 1]
    let opts = page.options
    // whyyyyyyyyyyyyyyyy?
    console.log(page, opts) // {options: {...}}, undefined
  },
})

上面的代码最后一行,page的打印结果里可以清楚的看到options,但是opts打印出来却是undefined

看截图,绿色框里的内容是上面代码中打印的page。红色框的内容是打印的page.options,结果是undefined。但是可以清楚的看到蓝色框里的options明明是一个对象。虽然是空对象,但也不应该打印undefined吧。我在项目中遇到这个bug的时候,特地另开了一个小程序,就包含一个页面,一个组件。页面引用组件,组件包含那几行代码就完事了,很好复现,麻烦看下这到底是什么问题。

回到顶部