wangliang_wd

feat:优化人民号-关注列表显示逻辑

@@ -7,11 +7,13 @@ export struct FollowSecondTabsComponent{ @@ -7,11 +7,13 @@ export struct FollowSecondTabsComponent{
7 @Link data:FollowListItem[] 7 @Link data:FollowListItem[]
8 @State firstIndex:number = 0 8 @State firstIndex:number = 0
9 @State currentIndex: number = 0 9 @State currentIndex: number = 0
  10 + @Prop LeftTab:number = 0 //监听tab变化,重置列表tabIndex = 0
10 private swiperController: SwiperController = new SwiperController() 11 private swiperController: SwiperController = new SwiperController()
11 fontColor: string = '#000000' 12 fontColor: string = '#000000'
12 selectedFontColor: string = '#ED2800' 13 selectedFontColor: string = '#ED2800'
13 14
14 aboutToAppear(){ 15 aboutToAppear(){
  16 +
15 } 17 }
16 18
17 build(){ 19 build(){
@@ -76,7 +78,7 @@ export struct FollowSecondTabsComponent{ @@ -76,7 +78,7 @@ export struct FollowSecondTabsComponent{
76 78
77 Swiper(this.swiperController ) { 79 Swiper(this.swiperController ) {
78 ForEach(this.data[this.firstIndex].children, (item: FollowSecondListItem, index: number ) => { 80 ForEach(this.data[this.firstIndex].children, (item: FollowSecondListItem, index: number ) => {
79 - FollowThirdTabsComponent({data:$data,firstIndex:$firstIndex,secondIndex:index}) 81 + FollowThirdTabsComponent({data:$data,firstIndex:$firstIndex,secondIndex:index,LeftTab:this.LeftTab})
80 }, (item: FollowListItem, index: number) => index.toString()) 82 }, (item: FollowListItem, index: number) => index.toString())
81 } 83 }
82 .loop(false) 84 .loop(false)
@@ -102,6 +104,7 @@ export struct FollowSecondTabsComponent{ @@ -102,6 +104,7 @@ export struct FollowSecondTabsComponent{
102 .onClick(()=>{ 104 .onClick(()=>{
103 this.currentIndex = index 105 this.currentIndex = index
104 this.swiperController.changeIndex(this.currentIndex) 106 this.swiperController.changeIndex(this.currentIndex)
  107 + this.LeftTab = Math.random()
105 }) 108 })
106 .justifyContent(FlexAlign.Center) 109 .justifyContent(FlexAlign.Center)
107 .height(50) 110 .height(50)
@@ -10,11 +10,21 @@ export struct FollowThirdTabsComponent{ @@ -10,11 +10,21 @@ export struct FollowThirdTabsComponent{
10 @Link firstIndex: number 10 @Link firstIndex: number
11 @State secondIndex:number = -1 11 @State secondIndex:number = -1
12 12
  13 + @Watch('LeftTabChange') @Prop LeftTab : number
13 private swiperController: SwiperController = new SwiperController() 14 private swiperController: SwiperController = new SwiperController()
14 private listScroller: Scroller = new Scroller() 15 private listScroller: Scroller = new Scroller()
15 fontColor: string = '#666666' 16 fontColor: string = '#666666'
16 selectedFontColor: string = '#222222' 17 selectedFontColor: string = '#222222'
17 18
  19 + ///重置界面选择
  20 + LeftTabChange(){
  21 + if (this.currentIndex != 0) {
  22 + this.currentIndex = 0
  23 + this.swiperController.changeIndex(this.currentIndex)
  24 + this.listScroller.scrollToIndex(this.currentIndex, true, ScrollAlign.CENTER)
  25 + }
  26 + }
  27 +
18 build(){ 28 build(){
19 if(this.data != null){ 29 if(this.data != null){
20 if(this.data[this.firstIndex].children[this.secondIndex].children == null || this.data[this.firstIndex].children[this.secondIndex].children.length == 0){ 30 if(this.data[this.firstIndex].children[this.secondIndex].children == null || this.data[this.firstIndex].children[this.secondIndex].children.length == 0){
@@ -25,6 +35,7 @@ export struct FollowThirdTabsComponent{ @@ -25,6 +35,7 @@ export struct FollowThirdTabsComponent{
25 } 35 }
26 } 36 }
27 37
  38 +
28 @Builder TabBuilder(index: number, item: FollowThirdListItem) { 39 @Builder TabBuilder(index: number, item: FollowThirdListItem) {
29 Column(){ 40 Column(){
30 Row(){ 41 Row(){
@@ -58,8 +69,6 @@ export struct FollowThirdTabsComponent{ @@ -58,8 +69,6 @@ export struct FollowThirdTabsComponent{
58 .justifyContent(FlexAlign.End) 69 .justifyContent(FlexAlign.End)
59 } 70 }
60 71
61 -  
62 -  
63 @Builder FollowThirdUI(){ 72 @Builder FollowThirdUI(){
64 73
65 Column(){ 74 Column(){