参考以下示例代码:@Entry @Component struct Index { @State viewPagerData: Array<testBean> = new Array @State viewPagerData2: Array<testBean> = new Array @State update: boolean = false @State index: number = 0 aboutToAppear(): void { for (let i = 0; i < 3; i++) { let item = new testBean() item.id = i item.name = 'viewPagerData:' + i this.viewPagerData.push(item) } for (let i = 0; i < 3; i++) { let item = new testBean() item.id = i item.name = 'viewPagerData2:' + i this.viewPagerData2.push(item) } } build() { Column() { Button(this.update? 'viewPagerData2' : 'viewPagerData') .onClick(() => { this.update = !this.update this.index = 0 }) Swiper() { ForEach(this.update ? this.viewPagerData2 : this.viewPagerData, (item: testBean, index) => { Text(item.name) .width('100%') .height('100%') .backgroundColor(Color.Pink) }, (item: testBean, index: number) => `${JSON.stringify(item)}_${index}`) } .index(this.index) .cachedCount(0) .loop(false) .vertical(true) .itemSpace(10) .onChange((index) => { this.index = index }) } } } export class testBean { id?: number name?: string }
参考以下示例代码: