请问有什么好的方式实现TabContent页面懒加载?

请问有什么好的方式实现TabContent页面懒加载?由于Component组件不支持回调onPageShow方法,我们选择了一些折中的方法,但是效果都不好。

HarmonyOS
2024-10-10 13:20:13
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

参考以下代码来实现:

@Entry  
@Component  
struct demo {  
  @State currentIndex: number = 0  
  @State tabContentArr: boolean[] = [true, false, false, false]  
  tabContents: string[] = ["首页", "推荐", "发现", "我的"]  
  
  build() {  
    Row() {  
      Column() {  
        Tabs({ barPosition: BarPosition.End }) {  
          ForEach(this.tabContents, (item, index) => {  
            TabContent() {  
              if (this.currentIndex === index || this.tabContentArr[index]) {  
                TabChild({ index: this.currentIndex })//懒加载接口可以放在子组件页面中  
              }  
            }.tabBar(item)  
          })  
        }  
        .onChange((index) => {  
          this.currentIndex = index  
          this.tabContentArr[index] = true  
        })  
      }  
      .width('100%')  
    }  
    .height('100%')  
  }  
}
分享
微博
QQ
微信
回复
2024-10-10 18:19:05
相关问题
在鸿蒙中如何实现页面加载?
37浏览 • 0回复 待解决
页面截图功能,什么方法?
643浏览 • 1回复 待解决
LazyForEach加载原理是什么
2098浏览 • 1回复 待解决
如何实现Fraction加载功能?
7316浏览 • 1回复 待解决
界面内容瀑布流加载实现
949浏览 • 1回复 待解决
数组嵌套数组场景加载实现
573浏览 • 1回复 待解决
Tabs组件加载问题
2186浏览 • 1回复 待解决
使用LazyForEach加载列表相关问题
792浏览 • 1回复 待解决
屏幕旋转计算,什么方案?
828浏览 • 1回复 待解决
HarmonyOS 加载数据删除问题
332浏览 • 1回复 待解决
在web页面中,什么方式可以拉起APP
370浏览 • 1回复 待解决
Scrollerfling实现什么方案
711浏览 • 1回复 待解决
grid组件及数据加载
889浏览 • 1回复 待解决
TabContent组件是否支持预加载
1574浏览 • 1回复 待解决
Listitem点击变色什么方法吗
2059浏览 • 1回复 待解决
HarmonyOS 列表展示list加载问题
463浏览 • 1回复 待解决
气泡组件推荐实现方式么?
319浏览 • 1回复 待解决