From 4cb9dfdd2494f1b67b8e4103eb85f8310305b143 Mon Sep 17 00:00:00 2001 From: "OWNEROR-41FNVD0\\lenovo" Date: Tue, 27 May 2025 20:02:25 +0800 Subject: [PATCH] =?UTF-8?q?feat=20(=E6=A0=87=E8=AF=86):=20=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=20Lazy=5FLoading=5FOptimizes=5FPerformance=20?= =?UTF-8?q?=E4=BB=93=E5=BA=93=E6=A0=87=E8=AF=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entry/src/main/ets/pages/Index.ets | 25 +++++++++++++++++++ .../entry/src/main/ets/segment/segment1.ets | 2 +- 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/ArkUI/Lazy_Loading_Optimizes_Performance/entry/src/main/ets/pages/Index.ets b/ArkUI/Lazy_Loading_Optimizes_Performance/entry/src/main/ets/pages/Index.ets index 8e2d24ad..bfb9190d 100644 --- a/ArkUI/Lazy_Loading_Optimizes_Performance/entry/src/main/ets/pages/Index.ets +++ b/ArkUI/Lazy_Loading_Optimizes_Performance/entry/src/main/ets/pages/Index.ets @@ -1,10 +1,35 @@ +import { MyDataSource } from '../segment/segment1'; + @Entry @Component struct Index { @State message: string = 'Hello World'; + private data: MyDataSource = new MyDataSource(); build() { RelativeContainer() { + // [Start cached_count_list] + List() { + // ... + }.cachedCount(3) + // [End cached_count_list] + + // [Start Lazy_for_each] + LazyForEach(this.data, (lazyForEachItem: string) => { + ListItem() { + Row() { + Text(lazyForEachItem).fontSize(50) + }.margin({ left: 10, right: 10 }) + }.onAppear(() => { + // Record the number of times the component is created through onAppear + console.info("appear:" + lazyForEachItem) + }) + }, (item: string) => { + // Print the key value in the keyGenerator function + console.info("key:" + item) + return item; + }) + // [End Lazy_for_each] Text(this.message) .id('HelloWorld') .fontSize($r('app.float.page_text_font_size')) diff --git a/ArkUI/Lazy_Loading_Optimizes_Performance/entry/src/main/ets/segment/segment1.ets b/ArkUI/Lazy_Loading_Optimizes_Performance/entry/src/main/ets/segment/segment1.ets index f558239c..9e4d040a 100644 --- a/ArkUI/Lazy_Loading_Optimizes_Performance/entry/src/main/ets/segment/segment1.ets +++ b/ArkUI/Lazy_Loading_Optimizes_Performance/entry/src/main/ets/segment/segment1.ets @@ -9,7 +9,7 @@ interface DataChangeListener { } -class MyDataSource { +export class MyDataSource { private _data: string[] = []; private _listeners: DataChangeListener[] = []; -- Gitee