| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169 | <template>	<view style="background-color: #FFFFFF;height: 100vh;" class="u-skeleton">		<view class="status_bar">			<!-- 这里是状态栏 -->		</view>		<view class="u-page" style="margin-bottom: 20rpx;">			<view class="u-m-t-20">				<u-swiper :list="bannersList" :height="310" :effect3d="true" border-radius="20" effect3d-previous-margin="20"				 bg-color="#FFF" class="u-skeleton-fillet" v-if="bannersList.length!=0"></u-swiper>				<u-swiper :list="list" :height="310" :effect3d="true" border-radius="20" effect3d-previous-margin="20" bg-color="#FFF"				 class="u-skeleton-fillet" v-else></u-swiper>			</view>			<view class="u-flex u-m-t-20  u-m-l-20 u-m-r-20 u-skeleton-fillet" style="width:710rpx;">				<!-- <view class="u-flex u-row-center" style="width: 150rpx; height: 70rpx;border-radius: 50rpx;background: rgba(52,140,245,0.1);font-size: 20rpx;color: #348CF5; font-size: 500;">					<u-image width="45rpx" height="35rpx" src="../../static/sailun/speaker.png" style="margin:10rpx;"></u-image>公告					<u-notice-bar mode="horizontal" :list="noticebarList" :volume-icon="false" bg-color="#FFF" color="#2B2B2B" padding="18rpx 12rpx" :is-circular="false"></u-notice-bar> -->				<u-notice-bar mode="vertical" :list="noticebarList" style="width: 710rpx;" type="primary"></u-notice-bar>			</view>			<view class="u-flex u-m-t-20 u-row-around u-m-l-10 u-m-r-10">				<u-image width="350rpx" src="../../static/sailun/scan_in.png" @click="scancodeIn" mode="widthFix" class="u-skeleton-fillet"></u-image>				<u-image width="350rpx" src="../../static/sailun/scan_out.png" @click="scancodeOut" mode="widthFix" class="u-skeleton-fillet"></u-image>			</view>			<view class="u-m-t-20">				<view class="u-m-l-30" style="font-size: 34rpx;">					快捷服务				</view>				<view class="u-flex u-flex-wrap u-row-center">					<u-image class="u-skeleton-fillet" width="350rpx" height="212rpx" src="../../static/sailun/1.png" style="margin: 10rpx;box-shadow:0rpx 0rpx 20rpx rgba(0,0,0,0.2);border-radius: 30rpx;"					 @click="inStock"></u-image>					<u-image class="u-skeleton-fillet" width="350rpx" height="212rpx" src="../../static/sailun/2.png" style="margin: 10rpx;box-shadow:0rpx 0rpx 20rpx rgba(0,0,0,0.2);border-radius: 30rpx;"					 @click="inMonthlyPolicy"></u-image>					<u-image class="u-skeleton-fillet" width="350rpx" height="212rpx" src="../../static/sailun/3.png" style="margin: 10rpx;box-shadow:0rpx 0rpx 20rpx rgba(0,0,0,0.2);border-radius: 30rpx;"					 @click="inInlineshop"></u-image>					<u-image class="u-skeleton-fillet" width="350rpx" height="212rpx" src="../../static/sailun/4.png" style="margin: 10rpx;box-shadow:0rpx 0rpx 20rpx rgba(0,0,0,0.2);border-radius: 30rpx;"					 @click="inIntegral"></u-image>				</view>			</view>			<view class="u-flex u-row-center u-m-t-30">				<u-image class="u-skeleton-fillet" width="680rpx" src="../../static/sailun/88reward.png" mode="widthFix"></u-image>			</view>		</view>		<!-- 与包裹页面所有内容的元素u-page同级,且在它的下方 -->		<!-- <u-tabbar v-model="current" :list="list"></u-tabbar> -->		<u-skeleton :loading="loading" :animation="true"></u-skeleton>		<u-toast ref="ulogin" />	</view></template><script>	import {		mapState,		mapMutations	} from 'vuex'	import {		request	} from '../../common/request/request'	require("promise.prototype.finally").shim()	import axios from 'axios'	export default {		data() {			return {				bannersList: [],				noticebarList: [],				loading: true, // 是否显示骨架屏组件				list: [					'../../static/sailun/swiper1.png'				]			};		},		onLoad() {			uni.$on('login', (data) => {				this.loginStatus = data.msg			})		},		onReady() {			if (this.loginStatus == "登录成功") {				this.$refs.ulogin.show({					title: "登录成功",				})			}		},		created() {			if (this.hasLogin) {				uni.showLoading({					title: '加载中...'				});				axios.all([this.getBanners(), this.getTiceList()])					.then(axios.spread((one, two) => {						this.bannersList = one.data.data.map(t => t.imgPath)						this.noticebarList = two.data.data.map(t => t.msgContent)					}))					.catch(err => {						console.log(err)					})					.finally(() => {						this.loading = false;						uni.hideLoading();				})			}		},		computed: {			...mapState(['hasLogin'])		},		methods: {			//轮播图			getBanners() {				return request({					url: '/homepage/getBanners',					method: 'post',					data: {						"storeId": this.$store.state.storeInfo.storeId,						"showPosition": 0, //门店0					}				})			},			//消息文字跑马灯			getTiceList() {				return request({					url: '/homepage/noticeList',					method: 'post',					data: {						"storeId": this.$store.state.storeInfo.storeId,						"contentType": "1" //门店1					}				})			},			scancodeIn() {				this.$u.route({					url: 'pages/home/scancode/index',				})			},			scancodeOut() {				this.$u.route({					url: 'pages/home/scancode/scancodeout',				})			},			inStock() {				this.$u.route({					url: 'pages/home/my-stock/my-stock',				})			},			inMonthlyPolicy() {				this.$u.route({					url: 'pages/home/monthly-policy/monthly-policy',				})			},			inInlineshop() {				this.$u.toast('线下订货暂不开放');				// this.$u.route({				// 	url: 'pages/home/inline-shop/inline_shop',				// })			},			inIntegral() {				this.$u.toast('积分商城暂不开放');				// this.$u.route({				// 	url: 'pages/home/integral-mall/integral_mall',				// })			}		},	}</script><style lang="scss" scoped>	.status_bar {		height: var(--status-bar-height);		width: 100%;		background-color: #FFF;	}</style>
 |