Page.after

解释:Page.after 可以增加 Page 级的切面,触发的时机是在所拦截的对应生命周期方法执行之后,也可以拦截所有页面上发生的事件(对于要拦截的事件,在 swan 文件上必须显示绑定了相应事件)。

方法参数

Object

Object 参数说明

属性名类型默认值 必填说明
urlString要增加切面的页面的 URL 规则, 当 URL 参数不填时,则默认拦截所有页面
methodsObject所有需要拦截的生命周期方法的集合
eventsObject所有要拦截的事件的集合

可拦截的所有方法

  • onLoad

  • onReady

  • onShow

  • onHide

  • onUnload

  • onForceReLaunch

  • onPullDownRefresh

  • onReachBottom

  • onPageScroll

  • onTabItemTap

  • onURLQueryChange

代码示例

  • JS
  1. // 为url中含有page/index的page实例增加切面
  2. Page.after({
  3. url: /pages\/index/,
  4. // 拦截页面中的生命周期onShow
  5. methods: {
  6. onShow(context) {
  7. console.log('message after normal show function');
  8. }
  9. },
  10. // 拦截页面中,属性有data-tag="1"的节点的tap事件
  11. events: {
  12. '[data-tag="1"]:tap': function (context) {
  13. console.log('message after a tag is tapped');
  14. }
  15. }
  16. });