循环渲染
@Entry @Component struct MyComponent { @State arr: number[] = [10, 20, 30] build() { Column() { Button() { Text('Reverse Array') }.onClick(() => { this.arr.reverse() }) ForEach(this.arr, // Parameter 1: array to be iterated (item: number) => { // Parameter 2: item generator Text(`item value: ${item}`) Divider() }, (item: number) => item.toString() // Parameter 3: unique key generator, which is optional but recommended. ) } } }
开发框架提供ForEach组件来迭代数组,并为每个数组项创建相应的组件。ForEach定义如下:
ForEach( arr: any[], // Array to be iterated itemGenerator: (item: any) => void, // child component generator keyGenerator?: (item: any) => string // (optional) Unique key generator, which is recommended. )
简单类型数组示例: