关于微信小程序开发应用,页面,组件的钩子函数自我见解

881 阅读2分钟
  1. 微信小程序应用钩子函数
  2. 微信小程序页面钩子函数
  3. 微信小程序组件钩子函数
  4. 页面钩子函数和组件钩子函数的个人见解

1.微信小程序应用钩子函数

小程序的生命周期函数是在app.js里面调用的,通过App(Object)函数用来注册一个小程序,指定其小程序的生命周期回调

  1. onLaunch(){}
    小程序初始化完成时触发,全局只触发一次。
  2. onShow(){}
    小程序启动,或从后台进入前台显示时触发。
  3. onHide(){}
    小程序从前台进入后台时触发.
  4. onError(){}
    小程序发生脚本错误或API调用报错时触发。
  5. onPageNotFound(){}
    小程序要打开的页面不存在时触发
  6. onUnhandledRejection(){}
    小程序有未处理的 Promise 拒绝时触发。
  7. onThemeChange(){}
    系统切换主题时触发。

2.微信小程序页面钩子函数

  1. onLoad(){}
    生命周期回调—监听页面加载

  2. onShow(){}
    生命周期回调—监听页面加载

  3. onReady(){}
    生命周期回调—监听页面初次渲染完成

  4. onHide(){}
    生命周期回调—监听页面隐藏

  5. onUnload(){}
    生命周期回调—监听页面卸载

  6. onPullDownRefresh(){}
    页面相关事件处理函数 比如 监听用户下拉动作
    ps:此方法必须要有你的页面必须有一个滚动条(横着的不算)

  7. onReachBottom(){}
    页面上拉触底事件的处理函数
    ps: 此方法需要对app.json 里面的windows做一定配置

    image.png 倒数第2个是否开启下拉能力

  8. onShareAppMessage(){}
    用户点击右上角分享

3.微信小程序组件钩子函数

  1. created(){}
    在组件实例刚刚被创建时执行,注意此时不能调用this.setdate(){}
  2. attached(){}
    在组件实例进入页面节点树时执行
  3. ready(){}
    在组件布局完成后执行
  4. moved(){}
    在组件实例被移动到节点树另一个位置时执行
  5. detached(){}
    在组件实例被从页面节点树移除时执行

4.页面钩子函数和组件钩子函数的个人见解

如果硬要我说组件 和页面 钩子函数的区别得话,那就是组件的钩子函数加了1个 处理组件换节点位置触发的函数,而这个页面的钩子函数时没有的