现象描述:

通过router.push接口跳转到快应用的B页面,当B页面只是引用一个自定义组件XX的时候,B页面的onShow生命周期无法触发。如下图所示:

代码如下:

      B页面代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

<import name="listone" src="./aa.ux"></import>

<template>

  <!-- template里只能有一个根节点 -->

<listone></listone>

</template>

<script>

  import prompt from '@system.prompt'

  export default {

    private: {

    },

    onInit: function () {

    },

    onShow() {

      console.log('我显示了我显示了我显示了我显示了');

      prompt.showToast({

        message: '我显示了我显示了我显示了我显示了'

      })

    }, //无法触发

  }

</script>

 

<style>

  .demo-page {

    flex-direction: column;

    justify-content: center;

    align-items: center;

  }

 

  .title {

    font-size: 40px;

    text-align: center;

  }

</style>

 

自定义组件aa.ux

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

<template>

  <div class="container">

    <text>天气不错啊</text>

    <text>天气不错啊</text>

    <text>天气不错啊</text>

    <text>天气不错啊</text>

  </div>

</template>

<style>

 .container {

    flex-direction: column;

    justify-content: center;

align-items: center;

background-color: #00fa9a;

  }

</style>

<script>

  module.exports = {

    data: {

    },

    onInit() {

    },

  }

</script>

 

问题分析:

快应用引擎框架决定了自定义组件作为B页面的根节点时,B页面的onShow生命周期是无法触发的,但是子组件自身的onShow可以触发。

解决方案:

在B页面的子组件外面加个div组件作为根节点,而不是把自定义组件作为根节点,这样B页面的onShow生命周期就可以触发了。

B页面修改后代码如下(见红色部分):

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

<import name="listone" src="./aa.ux"></import>

<template>

  <!-- template里只能有一个根节点 -->

  <div>

    <listone></listone>

  </div>

 

</template>

<script>

  import prompt from '@system.prompt'

  export default {

    private: {

    },

    onInit: function () {

    },

    onShow() {

      console.log('我显示了我显示了我显示了我显示了');

      prompt.showToast({

        message: '我显示了我显示了我显示了我显示了'

      })

    },

  }

</script>

 

<style>

  .demo-page {

    flex-direction: column;

    justify-content: center;

    align-items: center;

  }

 

  .title {

    font-size: 40px;

    text-align: center;

  }

</style>

 

修改后代码如下图所示:

欲了解更多详情,请参见:

快应用生命周期:

https://developer.huawei.com/consumer/cn/doc/development/quickApp-References/quickapp-script#h2-1575381018573

原文链接:https://developer.huawei.com/...
原作者:Mayism

页面生命周期onShow没有触发相关推荐

  1. onShow onHide页面生命周期不执行

    uniapp页面生命周期中:onShow onHide页面生命周期不执行 不知道什么原因 解决:使用vue生命周期代替 created 和 destoryed

  2. 页面生命周期_微信小程序的生命周期学习笔记-应用篇

    在我们学习微信小程序的过程当中,我们会参考很多资料.在这些资料中,我们经常能够看到"生命周期"四个字,在前面的课程中也提到过.在这里做一个说明. 生命周期是一类函数的统称,这些函数 ...

  3. uniApp 生命周期【应用生命周期 和 页面生命周期】

    应用生命周期 uni-app 支持如下应用生命周期函数: 函数名 说明 onLaunch 当uni-app 初始化完成时触发(全局只触发一次) onShow 当 uni-app 启动,或从后台进入前台 ...

  4. 应用生命周期、页面生命周期、组件生命周期

    一 应用生命周期 函数名 说明 应用场景 onLaunch 当 uni-app 应用初始化完成时触发,全局只触发一次 一般用于查看用户是否授权.获取用户的设备信息等 onShow 当应用启动,或从后台 ...

  5. uni-app 页面生命周期

    uni-app 页面生命周期 页面生命周期 uni-app 支持如下页面生命周期函数: onLoad 监听页面加载,其参数为上个页面传递的数据,参数类型为Object(用于页面传参) onShow 监 ...

  6. 【微信小程序】小程序应用和页面生命周期

    文章目录 什么是生命周期 生命周期的分类 生命周期函数 小程序的应用生命周期函数 小程序的页面生命周期函数 应用生命周期与页面生命周期之间的交互 什么是生命周期 生命周期(Life Cycle)是指一 ...

  7. uniapp应用和页面生命周期

    应用生命周期 应用生命周期仅可在 App.vue 中监听,在其它页面监听无效. onLaunch 当 uni-app 初始化完成时触发(全局只触发一次) onShow 当 uni-app 启动,或从后 ...

  8. 微信小程序学习6:页面生命周期回调函数

    微信小程序学习6:页面生命周期回调函数 文章目录 微信小程序学习6:页面生命周期回调函数 1 生命周期图像 2 生命周期回调函数触发条件 onLoad(Object query) onShow() o ...

  9. 小程序生命周期 页面生命周期及小程序生命周期

    其实微信小程序的声明周期分为两种 第一种是当前小程序的声明周期,可以理解为app的一整个声明周期 第二种是页面的生命周期即pages的声明周期 先上个图 这个图包含小程序整个的生命周期和页面的生命周期 ...

最新文章

  1. python3版本代码大全_python3中的
  2. LeetCode实战:搜索二维矩阵
  3. 《iOS应用开发指南——使用HTML5、CSS3和JavaScript》——导读
  4. SAP自定义查询工具SQVI
  5. linux电脑系统投到电视,教你如何在Linux操作系统下观看电视节目
  6. 洛谷 - P2756 飞行员配对方案问题(二分图最大匹配+路径打印)
  7. 判断是否是完全二叉树_【数据结构】二叉树高频考试题目【代码模板】!
  8. JAVA-初步认识-第十三章-多线程(验证同步函数的锁)
  9. JQuery合并表格单元格
  10. PHP笔记-JavaScript中使用Smarty变量
  11. MVVM教程(2):
  12. android开源2016_Google 2016年开源版本浏览
  13. python使用ide_python使用什么ide?[关闭]
  14. Web API-随机性案例步骤
  15. 【优化算法】动物迁徙优化算法(AMO)【含Matlab源码 1806期】
  16. OpenLayers 官网例子的中文详解 1
  17. ape格式转换ogg格式用什么软件好
  18. SLAM学习——BA(Bundle Adjustment)与图优化
  19. 服务器网卡驱动_教你星际蜗牛C款i211网卡服务器咋装Windows sevs2012R2服务器下
  20. 中国独立开发者生存到底有多艰难?

热门文章

  1. 基础概念之电路板的概念
  2. 小米十年,做不好售后
  3. 华大半导体正式成为RT-Thread高级会员
  4. Jar包冲突详解(Java)
  5. Jam-packed(思维)
  6. 验证 %java_home%_报错:JAVA_HOME cannot be determined from the Registry的解决
  7. 从COMPUTEX 2017看工业4.0与企业数码化
  8. 华为AC和AP的配置及升级方式
  9. java获取微信xml数据格式的文件_(5)微信二次开发 之 XML格式数据解析
  10. Helm部署rancher 高可用集群