• uniapp 底部导航 点击刷新当前页


    项目原来跳转页面后就刷新页面,交互效果不是很好,现在需要保存页面数据,当点击底部当前导航时,再刷新,类似抖音刷视频时候的操作。

    基础导航栏配置

    pages.json 简单的基础配置

    1. "pages": [
    2. {
    3. "path": "pages/index/index",
    4. "style": {
    5. "navigationBarTitleText": "首页"
    6. }
    7. }
    8. ,{
    9. "path" : "pages/my/my",
    10. "style" :
    11. {
    12. "navigationBarTitleText": "我的"
    13. }
    14. }
    15. ],
    16. "tabBar": {
    17. "color": "#7A7E83", // tab 上的文字默认颜色
    18. "selectedColor": "#3cc51f", // tab 上的文字选中时的颜色
    19. "borderStyle": "black", // tabbar 上边框的颜色,可选值 black/white
    20. "backgroundColor": "#ffffff", // tab 的背景色
    21. "list": [{ // 最少2个、最多5个 tab
    22. "pagePath": "pages/index/index", // 页面路径,必须在 pages 中先定义
    23. "iconPath": "static/tabbar/home.png", // 图片路径,icon 大小限制为40kb,建议尺寸为 81px * 81px
    24. "selectedIconPath": "static/tabbar/home-active.png", // 选中时的图片路径
    25. "text": "首页" // tab 上按钮文字
    26. }, {
    27. "pagePath": "pages/my/my",
    28. "iconPath": "static/tabbar/my.png",
    29. "selectedIconPath": "static/tabbar/my-active.png",
    30. "text": "我的"
    31. }]
    32. }

    监听点击

    使用 onTabItemTap 事件

    1. onTabItemTap(e){
    2. console.log(e)
    3. }

    函数的参数 例:点击发现页

     index: 导航的下标 (从0开始的)

    pagePath 路径  text: 名称

    实现

    在发现页 页面中 ,使用事件 重置参数加载数据

    1. onTabItemTap(e) {
    2. this.page = 1
    3. this.getList()
    4. }
    5. },

     配合生命周期,当首次进入时不刷新,当我们再当前页,点击当前页导航时刷新

    还是在 onLoad 的时候加载数据,通过一个变量去控制是否需要刷新页面数据

    needRefresh: false

    梳理一下点击后的逻辑,首次点击时不需要刷新数据,记录更新 needRefresh 的值,之后的点击就是在当前页的刷新了

    1. onTabItemTap(e) {
    2. if (this.needRefresh) {
    3. uni.pageScrollTo({ // 回到顶部
    4. duration: 0,
    5. scrollTop: 0
    6. })
    7. this.page = 1
    8. this.getList()
    9. } else {
    10. this.needRefresh = true
    11. }
    12. },

    使用 onHide 页面隐藏的时候重置状态

    1. onHide() {
    2. this.needRefresh = false
    3. },
  • 相关阅读:
    【大数据】flink 读取文件数据写入ElasticSearch
    AI人工智能Mojo语言:AI的新编程语言
    Spring源码-整体架构和核心组件
    Web前端系列技术之JavaScript基础(从入门开始)④
    2022年2000元能玩原神的手机推荐 这3款值得买
    部署个人静态网站到阿里云服务器(含域名解析)
    【Tomcat目录详解】关于Tomcat你还需要了解的详细内容
    机械搬运手结构设计
    7. 迭代器iterator
    四十三、视图层
  • 原文地址:https://blog.csdn.net/paidaboluo/article/details/126779191