@Entry @Component struct PreviewPage { @State list: NewsModel[] = mockData
@Builder
PagesMap(name: string) {
if (name === 'NewsListPage') {
NewsListPage()
}
}
@Builder
BreakingNewsBuilder() {
Column() {
TitleBar({ category: 'All', title: 'Breaking News' })
Swiper() {
ForEach( this .list, (item: NewsModel) => {
BannerNewsItem({ news: item })
})
}
.itemSpace(20)
.safeAreaPadding({ left: 15, right: 15, bottom: 40 })
}
}
@Builder
RecommendNewsBuilder() {
Column() {
TitleBar({ category: 'All', title: 'Recommendation' })
Column({ space: 12 }) {
ForEach( this .list, (item: NewsModel) => {
ListNewsItem({ news: item })
})
}
}
}
build() {
Navigation(pathStack) {
List() {
ListItem() {
this .BreakingNewsBuilder()
}
ListItem() {
this .RecommendNewsBuilder()
}
}
.width('100%')
.height('100%')
}
.mode(NavigationMode.Stack)
.navDestination( this .PagesMap)
.hideToolBar( true )
}
}