zoukankan      html  css  js  c++  java
  • 微信小程序组件生命周期

    1.A页面点击跳转到B页面,在B页面操作后A页面应该发生变化,但是实际上我们点击返回的时候我们发现并没有刷新,通过小程序的生命周期函数由onLoad(页面加载)、onReady(页面初次渲染完成)、onShow(页面显示)、onHide(页面隐藏)、onUnload(页面卸载)五个周期构成。

    问题:如果在onShow中执行this.onLoad(),会导致页面第一次加载的时候数组加载两次!

    原因:页面加载先执行onLoad,再执行的onShow,就会出现在onLoad加载一次数据,在onShow中执行this.onLoad()在加载一次数据。

    解决方案:将不需要刷新的数据放在onLoad中执行,将需要刷新的数据放在onShow中执行!

    2.对于组件的生命周期没有onLoad()、onShow()生命周期的页面,怎么对带有组件页面的进行页面刷新操作?

    点击A页面(带有组件),进入B页面,在B页面操作完成后,同样回退到A页面时,我们对A页面的数据进行刷新操作。

    组件:

    HTML:

    <custom-component>
     
     <view wx:for="{{list}}"> {{item}} </view>
     
    </custom-component>
    

    JS:

    Component({
        data: {
          list: []
        },
        ready: function() {
          this.getData();
          console.log('ready')
        },
     
        methods: {
          getData() {
            console.log("刷新数据")
            var num = Math.floor(Math.random() * 10 + 1);
            this.setData({
              list: num
            })
          }
        }
      })
    

      

  • 相关阅读:
    网速问题?更换国内源吧!
    NES像素风格的Raspberry
    dalao自动报表邮件2.0
    大佬要我写自动邮件报表系统
    扬帆起航
    Linux下安装与配置tomcat集群+负载均衡
    centos配置ssh和ftp服务
    tomcat中server.xml配置详解
    设置windows 宿主计算机和VMware虚拟机共享文件夹
    Redhat6 yum 安装与配置
  • 原文地址:https://www.cnblogs.com/wdw31210/p/12559685.html
Copyright © 2011-2022 走看看