| | |
| | | <view class="foot-bottom"></view> |
| | | <view class="foot-tavbar-container d-a-c" :style="'background:'+detail.backgroundColor || '' + ';' " |
| | | v-if="detail.list!=''"> |
| | | <view class="item d-c-c" :class="{'active':item.link_url == getRoute()}" v-for="(item, index) in detail.list" |
| | | :key="index" @click="tabBarFunc(item)"> |
| | | <view class="item d-c-c" :class="{'active':getLinkUrl(item.link_url) == getRoute()}" |
| | | v-for="(item, index) in detail.list" :key="index" @click="tabBarFunc(item)"> |
| | | <view style="height: 0;width: 0;opacity: 0;">{{getRoute()}}</view> |
| | | <view class="inner d-c-c d-c"> |
| | | <image v-if="detail.type!=2" :src="item.link_url == getRoute()?item.selectedIconPath:item.iconPath" |
| | | <image v-if="detail.type!=2" :src="getLinkUrl(item.link_url)== getRoute()?item.selectedIconPath:item.iconPath" |
| | | mode="aspectFill"> |
| | | </image> |
| | | <text v-if="detail.type!=1" |
| | | :style="item.link_url == getRoute()?'color:'+detail.textHoverColor+';':'color:'+detail.textColor+';'" |
| | | :style="getLinkUrl(item.link_url) == getRoute()?'color:'+detail.textHoverColor+';':'color:'+detail.textColor+';'" |
| | | class="text-name">{{ item.text}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <!--发布弹窗--> |
| | | <uniPopup :show="is_release" type='bottom' backgroundColor='#f2f2f2' width="700" msg=" " |
| | | @hidePopup="hideNotePopup"> |
| | | <view class="release"> |
| | | <view class="release-data d-c-c d-c" @click="gotoPage(release.demandindex_url)"> |
| | | <image :src="release.iconPath"></image> |
| | | <text>{{release.demandindex_text}}</text> |
| | | </view> |
| | | <view class="release-data d-c-c d-c" @click="gotoPage(release.supplyindex_url)"> |
| | | <image :src="release.selectedIconPath"></image> |
| | | <text>{{release.supplyindex_text}}</text> |
| | | </view> |
| | | </view> |
| | | <view class="guanbiannu" @click="hideNotePopup"> |
| | | <text class="icon-guanbi icon iconfont guanbi"></text> |
| | | </view> |
| | | </uniPopup> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | import uniPopup from '@/components/uni-popup.vue'; |
| | | export default { |
| | | props:['vars'], |
| | | components: { |
| | | uniPopup |
| | | }, |
| | | props: ['vars'], |
| | | data() { |
| | | return { |
| | | is_release: false, |
| | | /*当前选中*/ |
| | | activeTabber: '首页', |
| | | /*打开直播菜单*/ |
| | |
| | | detail: {}, |
| | | /*是否微信小程序*/ |
| | | platform: 'wx', |
| | | hasTab: false |
| | | hasTab: false, |
| | | release: {} |
| | | }; |
| | | }, |
| | | watch: { |
| | |
| | | this.detail = uni.getStorageSync('ShopTabBar'); |
| | | // this.hasmenu(); |
| | | this.getData(); |
| | | |
| | | |
| | | }, |
| | | methods: { |
| | | hasmenu() { |
| | | let self = this; |
| | | let curRoute = self.getRoute(); |
| | | let link_url = ''; |
| | | let res = self.detail.list.some(item => { |
| | | if (item.link_url == curRoute) { |
| | | link_url = item.link_url; |
| | | if (link_url.indexOf('?') !== -1) { |
| | | link_url = link_url.split('?')[0]; |
| | | } |
| | | if (link_url == curRoute) { |
| | | return true |
| | | } |
| | | }) |
| | |
| | | if (uni.getStorageSync('ShopTabBar').is_auto && uni.getStorageSync('ShopTabBar').is_auto != 0) { |
| | | uni.hideTabBar() |
| | | } |
| | | }, |
| | | getLinkUrl(link_url){ |
| | | if (link_url.indexOf('?') !== -1) { |
| | | return link_url = link_url.split('?')[0]; |
| | | } |
| | | return link_url; |
| | | }, |
| | | getRoute() { |
| | | let self = this; |
| | |
| | | curRoute = routes[routes.length - 1]['$page'].fullPath |
| | | } |
| | | } |
| | | // 如果当前路由包含查询参数,则只取路径部分进行匹配 |
| | | return curRoute |
| | | }, |
| | | /*点击菜单*/ |
| | | tabBarFunc(e) { |
| | | if (this.shopFootTabberData.active == e.text) { |
| | | if (e.link_url == '/pages3/release/chat/release') { |
| | | this.is_release = true; |
| | | this.release = e.release; |
| | | return |
| | | } |
| | | if (this.shopFootTabberData.active == e.text&&this.getLinkUrl(e.link_url) == this.getRoute()) { |
| | | return |
| | | } |
| | | this.shopFootTabberData.active = e.text |
| | | this.$store.commit('changefootTab', e.text); |
| | | this.gotoPage(e.link_url); |
| | | }, |
| | | hideNotePopup() { |
| | | this.is_release = false |
| | | }, |
| | | /*获取首页分类*/ |
| | | getData() { |
| | | let self = this; |
| | | self._get('supplier.page/nav', {shop_supplier_id:uni.getStorageSync('shop_supplier_id')}, function(res) { |
| | | self._get('supplier.page/nav', { |
| | | shop_supplier_id: uni.getStorageSync('shop_supplier_id') |
| | | }, function(res) { |
| | | self.detail = res.data.vars.data; |
| | | uni.setStorageSync('ShopTabBar', res.data.vars.data); |
| | | self.hasmenu(); |
| | |
| | | left: 0; |
| | | height: 98rpx; |
| | | background: #FFFFFF; |
| | | z-index: 90; |
| | | z-index: 999; |
| | | padding-bottom: env(safe-area-inset-bottom); |
| | | } |
| | | |
| | |
| | | .foot-tavbar-container .item.active .text-name { |
| | | color: #f8c341; |
| | | } |
| | | </style> |
| | | |
| | | .release { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | padding: 0 50rpx; |
| | | } |
| | | |
| | | .release-data { |
| | | background-color: #FFFFFF; |
| | | padding: 20rpx; |
| | | font-size: 30rpx; |
| | | } |
| | | |
| | | .release-data image { |
| | | width: 200rpx; |
| | | height: 200rpx; |
| | | margin-bottom: 20rpx; |
| | | } |
| | | |
| | | .guanbiannu { |
| | | padding: 30rpx 40rpx; |
| | | margin: 20rpx auto; |
| | | } |
| | | |
| | | .guanbi { |
| | | background-color: #dae5f9; |
| | | color: #a9adb8; |
| | | padding: 20rpx 40rpx; |
| | | font-size: 40rpx; |
| | | border-radius: 20rpx; |
| | | margin: 20rpx auto; |
| | | } |
| | | </style> |