小程序操作当前页面后返回上一级并自动刷新上一级页面数据

微信小程序的页面是由onLoad(页面加载)、onReady(页面初次渲染完成)、onShow(页面显示)、onHide(页面隐藏)、onUnload(页面卸载)五个周期构成;

实现返回上一页的时候其实是直接将隐藏的页面再显示出来,所以不存在页面的再次加载,

A页面 ——> B页面——>返回A页面(更新A页面数据)

解释:在A跳转B的过程实现是A页面隐藏,B页面初始化渲染; 返回过程是隐藏B页面显示A页面

第一种方法 :在A页面的onshow生命周期函数中更新数据

onLoad(){
    //数据的初始化操作
    init(){

    }
},

onShow() { //返回显示页面状态函数
    //错误处理
    //this.onLoad()//再次加载,实现返回上一页页面刷新
    //正确方法
    update(){
        console.log('我更新啦')
    }
}
ps: 在onShow中执行this.onLoad(),会导致页面第一次加载的时候数组加载两次!
造成原因:页面加载先执行onLoad,再执行的onShow,就会出现在onLoad加载一次数据,在onShow中执行this.onLoad()在加载一次数据。
解决办法:将不需要刷新的数据放在onLoad中执行,将需要刷新的数据放在onShow中执行!

 

第二种方法 :推荐使用的

在B页面中

//例如点击操作 触发下面的函数  bindtap="handleClick"
handleClick(){
    let pages = getCurrentPages();   //获取小程序页面栈
    let beforePage = pages[pages.length -2];  //获取上个页面的实例对象
    beforePage.setData({      //直接修改上个页面的数据(可通过这种方式直接传递参数)
      txt:'修改数据了'
    })
    beforePage.go_update();   //触发上个页面自定义的go_update方法
    wx.navigateBack({         //返回上一页  
      delta:1
    })
},

在A页面中

  //更新本页面
  go_update(){
    console.log('我更新啦')
  },

 

  • 9
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现小程序的分页管理页面,通常可以按照以下步骤进行: 1. 在小程序中创建一个管理页面,该页面用于显示分页列表内容。 2. 在页面加载时,从服务器端获取第一页数据,将数据渲染到页面中。 3. 在页面中添加一个下拉刷新组件,用于触发刷新操作。当用户下拉页面时,调用获取第一页数据的函数,重新渲染页面。 4. 在页面中添加一个上拉加载更多组件,用于触发加载更多操作。当用户滑动到页面底部时,调用获取下一页数据的函数,将数据追加到页面中。 5. 在页面中添加一个删除按钮,用于删除列表中的数据。当用户点击删除按钮时,调用删除数据的函数,将数据从服务器端和页面中删除。 6. 在页面中添加一个搜索框组件,用于搜索列表中的数据。当用户输入关键字时,调用搜索数据的函数,从服务器端获取匹配的数据,将数据渲染到页面中。 7. 在页面中添加一个排序按钮,用于按照指定的字段对列表数据进行排序。当用户点击排序按钮时,调用排序数据的函数,从服务器端获取按照指定字段排序后的数据,将数据渲染到页面中。 需要注意的是,在实现分页管理页面时,需要考虑到以下问题: 1. 如何处理加载数据失败的情况? 2. 如何避免重复加载同一页数据? 3. 如何处理删除数据失败的情况? 4. 如何处理搜索结果为空的情况? 5. 如何处理排序结果为空的情况? 6. 如何优化页面性能,避免长时间加载或渲染? 7. 如何保证分页数据的正确性和一致性? 以上是一个简单的小程序分页管理页面的实现步骤。具体实现细节需要根据实际情况进行调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值