组件与页面
组件与页面
组件的生命周期
而且由于入口文件继承自 Component 组件基类,它同样拥有组件生命周期,但因为入口文件的特殊性,他的生命周期并不完整,具体如下。
componentWillMount()
在微信/百度/字节跳动/支付宝小程序中这一生命周期方法对应 app 的 onLaunch,监听程序初始化,初始化完成时触发(全局只触发一次)。在此生命周期中通过 this.$router.params,可以访问到程序初始化参数。参数格式如下
| 属性 | 类型 | 说明 | 微信小程序 | 百度小程序 | 字节跳动小程序 | 支付宝小程序 | H5 | RN | 
|---|---|---|---|---|---|---|---|---|
| path | string | 启动小程序的路径 | ✔️ | ✔️ | ✔️ | ✔️ | ✘ | ✘ | 
| scene | number | 启动小程序的场景值 | ✔️ | ✔️ | ✔️ | ✘ | ✘ | ✘ | 
| query | Object | 启动小程序的 query 参数 | ✔️ | ✔️ | ✔️ | ✔️ | ✘ | ✘ | 
| shareTicket | string | shareTicket,详见获取更多转发信息 | ✔️ | ✔️ | ✔️ | ✘ | ✘ | ✘ | 
| referrerInfo | Object | 来源信息。从另一个小程序、公众号或 App 进入小程序时返回。否则返回 {} | ✔️ | ✔️ | ✔️ | ✔️ | ✘ | ✘ | 
其中,场景值 scene,在微信小程序和百度小程序中存在区别,请分别参考 微信小程序文档 和 百度小程序文档。来源信息 referrerInfo 的数据结构如下
| 属性 | 类型 | 说明 | 微信小程序 | 百度小程序 | 字节跳动小程序 | 支付宝小程序 | 
|---|---|---|---|---|---|---|
| appId | string | 来源小程序,或者公众号(微信中) | ✔️ | ✔️ | ✔️ | ✔️ | 
| extraData | Object | 来源小程序传过来的数据,微信和百度小程序在 scene=1037 或 1038 时支持 | ✔️ | ✔️ | ✔️ | ✔️ | 
| sourceServiceId | string | 来源插件,当处于插件运行模式时可见 | ✘ | ✘ | ✘ | ✔️(基础库版本 1.11.0) | 
componentDidMount()
在微信/百度/字节跳动/支付宝小程序中这一生命周期方法对应 app 的 onLaunch,在 componentWillMount 后执行监听程序初始化,初始化完成时触发(全局只触发一次)。在此生命周期中也可以通过 this.$router.params,访问到程序初始化参数,与 componentWillMount 中一致
