收藏
回答

页面传参,为什么this.$root.$mp.query接收时显示为undefined?

打印this.$root.$mp时,为一个对象,展开这个对象可以看到query,但打印query的值时,却输出undefined

打印代码如下:

最后一次编辑于  2021-06-30
回答关注问题邀请回答
收藏

1 个回答

  • 崖月减肥中,不瘦三十斤不换名字
    崖月减肥中,不瘦三十斤不换名字
    2021-06-30

    js 中的 对象 打印并不是实时的,底层是因为堆内存的问题。

    所以要想知道实时值就必须将对象转为字符串。

    可以这样JSON.stringify(this.$root.$mp),看看当时的this.$root.$mp里面是否有值,还是后面塞进去的。

    2021-06-30
    有用 1
    回复 3
    • 小木屋
      小木屋
      2021-06-30
      打印JSON.stringify(this.$root.$mp)会报错:Property or method "toJSON" is not defined
      2021-06-30
      回复
    • 崖月减肥中,不瘦三十斤不换名字
      崖月减肥中,不瘦三十斤不换名字
      2021-06-30回复小木屋
      其实不用打印,我大概知道你什么问题了,就是query在你打印的时候没挂载,后面挂载了,打印只是辅助确认的手段,你用的啥框架啊,去看看对应文档,看看小程序的传参什么时候挂载的,把你的this.$root.$mp这个用法搜一下,好像是mpvue的,这边有一条,所以你取数据的生命周期是不是太早了。
      2021-06-30
      回复
    • 小木屋
      小木屋
      2021-06-30回复崖月减肥中,不瘦三十斤不换名字
      是声明周期取早了,谢谢您
      2021-06-30
      回复
登录 后发表内容