Showing
2 changed files
with
15 additions
and
3 deletions
sight_harmony/features/wdComponent/src/main/ets/components/mine/follow/FollowSecondTabsComponent.ets
| @@ -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(){ |
-
Please register or login to post a comment