| | |
| | | <template> |
| | | <view class="top-bar" :style="{paddingTop: statusBarHeight + 'px'}"> |
| | | <view class="top-bar" :style="{paddingTop: statusBarHeight + 'px', backgroundColor: bgColor}" :class="{'has-bg': bgColor !== 'transparent'}"> |
| | | <view class="top-bar-content"> |
| | | <!-- 标题列表 --> |
| | | <scroll-view class="title-scroll" scroll-x="true" scroll-with-animation :scroll-left="scrollLeft"> |
| | |
| | | v-for="(item, index) in titleList" |
| | | :key="index" |
| | | :class="{active: selectedTitleIndex === item.index, 'title-item': true}" |
| | | :style="{color: textColor}" |
| | | @click="changeTab(item)" |
| | | > |
| | | <text>{{item.title}}</text> |
| | | <view class="underline" v-if="selectedTitleIndex === item.index"></view> |
| | | <view class="underline" :style="{backgroundColor: textColor}" v-if="selectedTitleIndex === item.index"></view> |
| | | </view> |
| | | </view> |
| | | </scroll-view> |
| | |
| | | selectedTitleIndex: { |
| | | type: String, |
| | | default: 'home' |
| | | }, |
| | | textColor: { |
| | | type: String, |
| | | default: 'white' |
| | | }, |
| | | bgColor: { |
| | | type: String, |
| | | default: 'transparent' |
| | | } |
| | | }, |
| | | data() { |
| | |
| | | scrollLeft: 0, |
| | | titleList: [ |
| | | { |
| | | index: 'home', |
| | | index: 'home1', |
| | | pagePath: '/pages/tabbar/index/home', |
| | | title: '推荐' |
| | | }, |
| | | { |
| | | index: 'kitchenCustomize', |
| | | pagePath: '/pages/kitchen/KitchenCustomize', |
| | | title: '厨房定制' |
| | | }, |
| | | { |
| | | index: 'shop', |
| | |
| | | pagePath: '/pages/mine/activity/reportActivity', |
| | | title: '活动' |
| | | }, |
| | | { |
| | | index: 'health', |
| | | pagePath: '/pages/health/healthVideo', |
| | | title: '大健康' |
| | | } |
| | | // { |
| | | // index: 'health', |
| | | // pagePath: '/pages/health/healthVideo', |
| | | // title: '大健康' |
| | | // } |
| | | ] |
| | | }; |
| | | }, |
| | |
| | | right: 0; |
| | | z-index: 999; |
| | | } |
| | | |
| | | .top-bar.has-bg { |
| | | box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.05); |
| | | } |
| | | |
| | | .top-bar .top-bar-content { |
| | | box-sizing: border-box; |
| | |
| | | |
| | | .top-bar .title-scroll { |
| | | width: 100%; |
| | | height: 80rpx; |
| | | height: 40px; |
| | | white-space: nowrap; |
| | | } |
| | | |
| | |
| | | position: relative; |
| | | padding: 0 24rpx; |
| | | font-size: 32rpx; |
| | | color: white; |
| | | /* color: white; */ |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | |
| | | transform: translateX(-50%); |
| | | width: calc(100% - 76rpx); |
| | | height: 4rpx; |
| | | background-color: white; |
| | | /* background-color: white; */ |
| | | border-radius: 4rpx; |
| | | } |
| | | </style> |
| | | </style> |