收藏
回答

小程序的自定义组件如何获取自身所在页面的实例?

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 需求 Component 客户端 6.7.2 1.9.98

小程序的组件如何获取自身所在页面的示例?

目的是想把组件的生命周期与page的生命周期关联起来。

虽然 2.2.3 暴露了一部分 lifetimes 但是不够,并且有兼容的问题,时候有其他的优雅的方法?

最后一次编辑于  2018-09-01  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

1 个回答

  • 大肥凯
    大肥凯
    01-10

    使用getCurrentPages方法可以不?虽然不优雅

    01-10
    赞同
    回复 1
    • fisher
      fisher
      04-16

      这种方法肯定不行,它获取的永远是页面栈里面最后一个页面也就是当前打开的页面,跟组件所在的页面没有什么关联。从目前开放的api来看,无法直接获取组件所在的页面对象。 一个较简单的做法是在一个自定义page里面重写页面的生命周期函数,为页面设置pageShown,pageHidden等属性,然后在相应的组件里面定义property并做监听。如果觉得性能不好,那就只在用到的页面和事件中添加。 也可以通过自定义事件来完成两者之间的传值,不过要需要一个唯一标志来区分不同的页面。

      希望小程序日后尽快尽多地开放更多实用功能吧。

      04-16
      回复