浏览代码

首页改版

zhengjinyi 1 年之前
父节点
当前提交
d5aaaa7603

+ 1 - 0
components/cm-module/cart-components/index.vue

@@ -124,6 +124,7 @@
 																v-model="pros.number"
 																@blur="changeNnmber($event, item, pros)"
 																@focus="changeInput(pros)"
+																cursor-spacing="80"
 															/>
 															<view
 																class="iconfont icon-jiahao"

+ 23 - 15
components/cm-module/homeIndex/banner.vue

@@ -1,6 +1,6 @@
 <template>
 	<view class="banner">
-		<view class="swiper-banner-msg">
+<!-- 		<view class="swiper-banner-msg">
 			<view class="content">
 				<view class="item le">
 					<view class="item-icon">
@@ -27,8 +27,8 @@
 					</view>
 				</view>
 			</view>
-		</view>
-		<view class="tui-rolling-view">
+		</view -->
+		<!-- <view class="tui-rolling-view">
 			<view class="tui-rolling-content">
 				<view class="tui-rolling-news">
 					<text class="tui-roll-label">公告:</text>
@@ -44,7 +44,7 @@
 					</view>
 				</view>
 			</view>
-		</view>
+		</view> -->
 		<view class="swiper-banner-content">
 			<view class="swiper-banner-box">
 				<swiper
@@ -82,9 +82,6 @@ export default {
 	props: {
 		list: {
 			type: Array
-		},
-		newsList: {
-			type: Array
 		}
 	},
 	data() {
@@ -93,7 +90,9 @@ export default {
 			StatusBar: this.StatusBar
 		}
 	},
-	created() {},
+	created() {
+		
+	},
 	computed: {},
 	methods: {
 		detail(item){// 跳转公告详情
@@ -118,7 +117,7 @@ export default {
 
 <style lang="scss" scoped>
 .banner {
-	margin-top: 50px;
+	margin-top: 170rpx;
 	background: #f7f7f7;
 }
 .swiper-banner-content {
@@ -129,7 +128,7 @@ export default {
 }
 .swiper-banner-box {
 	width: 100%;
-	height: 360rpx;
+	height: auto;
 	position: relative;
 	background-size: cover;
 	display: flex;
@@ -137,9 +136,9 @@ export default {
 	background: linear-gradient(180deg, #FFFFFF 0%, rgba(255,255,255,0) 100%);
 }
 .tui-banner-swiper {
-	width: 700rpx;
-	margin: 0 auto;
-	height: 340rpx;
+	width: 702rpx;
+	margin: 10rpx auto;
+	height: 280rpx;
 	border-radius: 16rpx;
 	overflow: hidden;
 	transform: translateY(0);
@@ -149,7 +148,7 @@ export default {
 	}
 	.tui-slide-image {
 		width: 100%;
-		height: 340rpx;
+		height: 280rpx;
 		display: block;
 	}
 }
@@ -184,7 +183,7 @@ export default {
 	width: 100%;
 	height: 48rpx;
 	box-sizing: border-box;
-	background-color: #ff5b00;
+	background-color: #FFFFFF;
 	padding: 0 24rpx;
 	.content {
 		width: 100%;
@@ -301,4 +300,13 @@ export default {
 		margin-top: 10rpx;
 	}
 }
+.tui-drop-item {
+	color: #333;
+	height: 80rpx;
+	font-size: 28rpx;
+	padding: 20rpx 40rpx 20rpx 40rpx;
+	box-sizing: border-box;
+	display: inline-block;
+	width: 50%;
+}
 </style>

+ 264 - 110
components/cm-module/homeIndex/customer.vue

@@ -1,39 +1,76 @@
 <template name="headerNavbar">
-    <!-- 自定义导航栏 -->
-    <view
-        class="navbar-wrap"
-        :class="isScroll ? opacityNav : ''"
-        :style="{
-            height: CustomBar + 55 + 'px',
-            paddingTop: StatusBar + 'px',
-        }"
-    >
-        <view
-            class="navbar-text"
-            :style="{
-                color: navbarData.textColor ? navbarData.textColor : '',
-                lineHeight: CustomBar - StatusBar + 'px;',
-                fontSize: fontSizeSetting + 'px;',
-                paddingLeft: navbarData.textLeft ? '' : 12 + 'px'
-            }"
-            :class="platformClass"
-        >
-            {{ navbarData.title ? navbarData.title : ' ' }}
-        </view>
-        <view class="search-input">
-            <view class="gosearch-btn" @click="this.$api.navigateTo(clickPath)">
-                <view class="search-icon"><text class="iconfont icon-iconfonticonfontsousuo1"></text></view>
-                <view class="search-text">{{ hotSearchText }}</view>
-            </view>
-			<view class="gosearch-kf">
-				<!-- #ifdef MP-WEIXIN -->
-				<button class="contact-btn" open-type="contact" @bindcontact="handleContact">
-				    <text class="iconfont icon-zixunrexian"></text>
-				</button>
-				<!-- #endif -->
+	<!-- 自定义导航栏 -->
+	<view>
+		<view
+			class="navbar-wrap"
+			:class="isScroll ? opacityNav : ''"
+			:style="{
+				height: CustomBar + 88 + 'px',
+				paddingTop: StatusBar + 'px'
+			}"
+		>
+			<view
+				class="navbar-text"
+				:style="{
+					color: navbarData.textColor ? navbarData.textColor : '',
+					lineHeight: CustomBar - StatusBar + 'px;',
+					fontSize: fontSizeSetting + 'px;',
+					paddingLeft: navbarData.textLeft ? '' : 12 + 'px'
+				}"
+				:class="platformClass"
+			>
+				{{ navbarData.title ? navbarData.title : ' ' }}
 			</view>
-        </view>
-    </view>
+			<view class="search-input">
+				<view class="gosearch-btn" @click="this.$api.navigateTo(clickPath)">
+					<view class="search-icon"><text class="iconfont icon-iconfonticonfontsousuo1"></text></view>
+					<view class="search-text">{{ hotSearchText }}</view> <view class="search-btn">搜索</view>
+				</view>
+				<view class="gosearch-kf">
+					<!-- #ifdef MP-WEIXIN -->
+					<button class="contact-btn" open-type="contact" @bindcontact="handleContact">
+						<text class="iconfont icon-zixunrexian"></text>
+					</button>
+					<!-- #endif -->
+				</view>
+			</view>
+			<view class="swiper-banner-nav">
+				<scroll-view class="scroll-view_H" scroll-x="true">
+					<view class="tui-goods__item active">首页</view>
+					<view class="tui-goods__item" v-for="(navs, index) in navBarsList" @click="NavToDetailPage(navs)">
+						{{ navs.name }}
+					</view>
+				</scroll-view>
+				<view class="swiper-nav-icon" @click="showDropScreenShow">
+					<text class="iconfont" :class="dropScreenShow ? 'icon-xiangshangjiantou':'icon-xiangxiajiantou'"></text>
+				</view>
+			</view>
+		</view>
+		<!--顶部下拉筛选弹层 属性-->
+		<tui-top-dropdown
+			backgroundColor="#FFFFFF"
+			:show="dropScreenShow"
+			:paddingbtm="10"
+			:translatey="dropScreenH"
+			@close="btnCloseDrop"
+		>
+			<scroll-view class="tui-scroll-box" scroll-y :scroll-top="scrollTop">
+				<view class="tui-seizeaseat-24">
+					<view class="tui-drop-item tui-icon-middle">全部分类</view>
+					<view class="tui-drop-item tui-icon-middle active">首页</view>
+					<view
+						class="tui-drop-item tui-icon-middle"
+						v-for="(item, index) in navBarsList"
+						:key="index"
+						@tap.stop="NavToDetailPage(item)"
+						:data-index="index"
+					>
+						{{ item.name }}
+					</view>
+				</view>
+			</scroll-view>
+		</tui-top-dropdown>
+	</view>
 </template>
 
 <script>
@@ -49,6 +86,9 @@ export default {
             // 由父页面传递的数据
             type: Object
         },
+		navBarsList: {
+			type: Array
+		},
         isScroll: {
             type: Boolean,
             default: () => false
@@ -65,6 +105,11 @@ export default {
             capsule: this.capsule,
             platformClass: this.platformClass,
             opacityNav: 'opacityNav', // 渐变颜色
+			height: 64, //header高度
+			scrollTop: 0,
+			dropScreenH: this.CustomBar+78, //下拉筛选框距顶部距离
+			dropScreenShow:false,
+
         }
     },
     created() {
@@ -74,7 +119,18 @@ export default {
         } else {
             this.navbarData.haveBack = true
         }
-        console.log(this.isScroll)
+		let obj = {};
+		// #ifdef MP-WEIXIN
+		obj = wx.getMenuButtonBoundingClientRect();
+		// #endif
+		uni.getSystemInfo({
+			success: res => {
+				this.height = obj.top ? obj.top + obj.height + 8 : res.statusBarHeight + 44;
+				//略小,避免误差带来的影响
+				this.dropScreenH = (this.height * 750) / res.windowWidth + 148;
+			}
+		});
+		console.log('dropScreenH',this.dropScreenH)
     },
     onLoad() {},
     onPageScroll(e) {
@@ -92,6 +148,16 @@ export default {
                 url: '/pages/tabBar/home/index'
             })
         },
+		NavToDetailPage(item) {
+			//跳转
+			this.$api.FlooryNavigateTo(item)
+		},
+		showDropScreenShow(){
+			this.dropScreenShow = true
+		},
+		btnCloseDrop(){
+			this.dropScreenShow = false
+		},
 		handleContact(e) {
 		    console.log(e.detail.path)
 		    console.log(e.detail.query)
@@ -103,94 +169,106 @@ export default {
 
 <style lang="scss" scoped>
 .navbar-wrap {
-    position: fixed;
-    width: 100%;
-    top: 0;
-    z-index: 100000;
-    box-sizing: border-box;
-    background: #FF5B00;
-    background-position-y: -50rpx;
-    border-bottom: none;
+	position: fixed;
+	width: 100%;
+	top: 0;
+	z-index: 9999;
+	box-sizing: border-box;
+	background:#ffffff url(https://static.caimei365.com/app/img/bg/home_cumres_bg@2x.png);
+	background-size: cover;
+	border-bottom: none;
 }
 .opacityNav {
-    background: #FF5B00;
+	
 }
 .navbar-text {
-    font-size: 30rpx;
-    color: #000000;
-    font-weight: 500;
+	font-size: 30rpx;
+	color: #000000;
+	font-weight: 500;
 }
 .navbar-text.center {
-    text-align: center;
+	text-align: center;
 }
 .navbar-text.left {
-    text-align: left;
-    padding-left: 45px;
+	text-align: left;
+	padding-left: 45px;
 }
 .navbar-icon {
-    position: fixed;
-    display: flex;
-    box-sizing: border-box;
+	position: fixed;
+	display: flex;
+	box-sizing: border-box;
 }
 .navbar-icon .iconfont {
-    display: inline-block;
-    overflow: hidden;
-    font-size: 44rpx;
-    padding-right: 40rpx;
-    margin-top: 1px;
+	display: inline-block;
+	overflow: hidden;
+	font-size: 44rpx;
+	padding-right: 40rpx;
+	margin-top: 1px;
 }
 .navbar-icon .icon-iconfonticonfontsousuo1 {
-    color: #000000;
+	color: #000000;
 }
 .navbar-icon view {
-    height: 18px;
-    border-left: 0.5px solid rgba(0, 0, 0, 0.3);
-    margin-top: 6px;
+	height: 18px;
+	border-left: 0.5px solid rgba(0, 0, 0, 0.3);
+	margin-top: 6px;
 }
 .navbar-loading {
-    background: #fff;
-    text-align: center;
+	background: #fff;
+	text-align: center;
 }
 .search-input {
-    width: 100%;
-    height: 100rpx;
-    padding: 20rpx 24rpx 10rpx 24rpx;
-    box-sizing: border-box;
-    .gosearch-btn {
-        width: 632rpx;
-        height: 100%;
-        border-radius: 40rpx;
-        background: #f0f0f0;
-        font-size: 28rpx;
-        line-height: 70rpx;
-        color: #8a8a8a;
-        background: #ffffff;
-        position: relative;
-        box-sizing: border-box;
-        padding-left: 80rpx;
+	width: 100%;
+	height: 90rpx;
+	padding: 20rpx 24rpx 0rpx 24rpx;
+	box-sizing: border-box;
+	.gosearch-btn {
+		width: 632rpx;
+		height: 100%;
+		padding: 5rpx;
+		border-radius: 40rpx;
+		background: #f0f0f0;
+		color: #8a8a8a;
+		background: #ffffff;
+		position: relative;
+		box-sizing: border-box;
+		padding-left: 80rpx;
+		border: 1px solid #ff5b00;
 		float: left;
-        .search-icon {
-            width: 80rpx;
-            height: 70rpx;
-            position: absolute;
-            left: 0;
-            top: 2rpx;
-            text-align: center;
-            line-height: 70rpx;
-            .icon-iconfonticonfontsousuo1 {
-                margin: 0 6rpx;
-                font-size: $font-size-34;
-                color: #8a8a8a;
-                z-index: 10;
-            }
-        }
-        .search-text {
-            font-size: $font-size-24;
-            line-height: 70rpx;
-            color: #8a8a8a;
-        }
-    }
-	.gosearch-kf{
+		.search-icon {
+			width: 80rpx;
+			height: 56rpx;
+			position: absolute;
+			left: 0;
+			top: 9rpx;
+			text-align: center;
+			line-height: 56rpx;
+			.icon-iconfonticonfontsousuo1 {
+				margin: 0 6rpx;
+				font-size: $font-size-40;
+				color: #8a8a8a;
+				z-index: 10;
+			}
+		}
+		.search-text {
+			font-size: $font-size-24;
+			line-height: 56rpx;
+			color: #8a8a8a;
+			float: left;
+		}
+		.search-btn {
+			width: 120rpx;
+			height: 58rpx;
+			border-radius: 30rpx;
+			background-color: #ff5b00;
+			line-height: 58rpx;
+			text-align: center;
+			font-size: $font-size-28;
+			color: #ffffff;
+			float: right;
+		}
+	}
+	.gosearch-kf {
 		width: 70rpx;
 		height: 70rpx;
 		border-radius: 50%;
@@ -198,15 +276,91 @@ export default {
 		line-height: 70rpx;
 		text-align: center;
 		.contact-btn {
-		    width: 70rpx;
-		    height: 70rpx;
-		    background-color: rgba(0, 0, 0, 0);
-		    line-height: 70rpx;
+			width: 70rpx;
+			height: 70rpx;
+			background-color: rgba(0, 0, 0, 0);
+			line-height: 70rpx;
 			text-align: center;
-		    .iconfont {
-		        font-size: $font-size-48;
-		        color: #ffffff;
-		    }
+			.iconfont {
+				font-size: $font-size-48;
+				color: #ff5b00;
+			}
+		}
+	}
+}
+.swiper-banner-nav {
+	width: 100%;
+	height: 80rpx;
+	box-sizing: border-box;
+	padding: 15rpx 76rpx 15rpx 24rpx;
+	overflow: hidden;
+	display: flex;
+	align-items: center;
+	position: relative;
+	.swiper-nav-icon {
+		width: 76rpx;
+		height: 80rpx;
+		line-height: 80rpx;
+		text-align: center;
+		position: absolute;
+		right: 0;
+		top: 0;
+		.iconfont {
+			font-size: $font-size-28;
+			color: #666666;
+		}
+	}
+	.scroll-view_H {
+		white-space: nowrap;
+		width: 100%;
+		.tui-goods__item {
+			display: inline-block;
+			margin: 0 10rpx;
+			height: 50rpx;
+			line-height: 50rpx;
+			font-size: $font-size-26;
+			color: #333333;
+			text-align: center;
+			&.active {
+				color: #ff5b00;
+				font-weight: bold;
+				position: relative;
+				&::before {
+					content: '';
+					width: 20rpx;
+					height: 4rpx;
+					border-radius: 2rpx;
+					background: #ff5b00;
+					position: absolute;
+					bottom: 0;
+					left: 50%;
+					margin-left: -10rpx;
+				}
+			}
+		}
+	}
+}
+.tui-seizeaseat-24 {
+	width: 100%;
+	height: auto;
+	box-sizing: border-box;
+	padding: 24rpx;
+	.tui-drop-item {
+		padding: 0 20rpx;
+		height: 56rpx;
+		float: left;
+		line-height: 56rpx;
+		background: #f5f5f5;
+		font-size: 24rpx;
+		margin: 12rpx 8rpx;
+		text-align: center;
+		border: 1px solid #f5f5f5;
+		color: #666666;
+		border-radius: 28rpx;
+		&.active {
+			background: #ffffff;
+			border-color: #ff5b00;
+			color: #ff5b00;
 		}
 	}
 }

+ 124 - 120
components/cm-module/homeIndex/navbars.vue

@@ -1,154 +1,158 @@
 <template name="navbars">
 	<view class="navbar">
 		<view class="navbars-content clearfix">
-			<view class="nav-item" v-for="(item,index) in navList" :key="index" @click="NavToDetailPage(item,index)">
+			<view class="nav-item" v-for="(item, index) in navList" :key="index" @click="NavToDetailPage(item, index)">
+				<view class="icon"> <image class="icon-image" :src="item.icon" mode="widthFix"></image> </view>
+				<view class="name">{{ item.name }}</view>
+			</view>
+			<view class="nav-item" @click="handleMore" v-if="list.length > 9">
 				<view class="icon">
-					<image class="icon-image" :src="item.icon" mode="widthFix"></image>
+					<image
+						class="icon-image"
+						src="https://static.caimei365.com/app/img/icon/icon-navs-more@2x.png"
+						mode="widthFix"
+					></image>
 				</view>
-				<view class="name">{{ item.name }}</view>
+				<view class="name">更多</view>
 			</view>
 		</view>
 	</view>
 </template>
 
 <script>
-	export default{
-		name:'navbars',
-		props:{
-			list:{
-				type:Array
-			}
-		},
-		data() {
-			return{
-				current:100,
-				navList:[]
-			}
-		},
-		created(){
-			this.initData(this.list)
+export default {
+	name: 'navbars',
+	props: {
+		list: {
+			type: Array
+		}
+	},
+	data() {
+		return {
+			current: 100,
+			navList: []
+		}
+	},
+	created() {
+		this.initData(this.list)
+	},
+	computed: {},
+	methods: {
+		initData(list) {
+			this.navList = list.slice(0, 9)
 		},
-		computed: {
-	
+		handleMore() {
+			this.$api.navigateTo(`/pages/goods/channel`)
 		},
-		methods:{
-			initData(list){
-				this.navList = list
-			},
-			NavToDetailPage(pros,index) {//跳转
-				if(index === 3){
-					let linkPath = 'https://static.caimei365.com/app/caimei-activity-h5/html/2023/activity_02.html'
-					this.$api.navigateTo(`/pages/h5/activity/activity?link=${linkPath}&linkId=382`)
-				}else{
-					/**
-					 * 页面跳转
-					 **/
-					this.$api.FlooryNavigateTo(pros)
-				}
+		NavToDetailPage(pros, index) {
+			//跳转
+			if (index === 3) {
+				let linkPath = 'https://static.caimei365.com/app/caimei-activity-h5/html/2023/activity_02.html'
+				this.$api.navigateTo(`/pages/h5/activity/activity?link=${linkPath}&linkId=382`)
+			} else {
+				/**
+				 * 页面跳转
+				 **/
+				this.$api.FlooryNavigateTo(pros)
 			}
 		}
 	}
+}
 </script>
 
 <style lang="scss" scoped>
-    .navbar {
-        background: #f7f7f7;
-        display: flex;
-        align-items: center;
-        justify-content: center;
-    }
-	.navbars-content{
-		width: 94%;
+.navbar {
+	background: #f7f7f7;
+	display: flex;
+	align-items: center;
+	justify-content: center;
+}
+.navbars-content {
+	width: 94%;
+	height: auto;
+	box-sizing: border-box;
+	padding: 20rpx 0 0 0;
+	background-color: #fff;
+	border-radius: 16rpx;
+	margin-top: 14rpx;
+	.nav-item {
+		width: 20%;
 		height: auto;
-		box-sizing: border-box;
-        padding: 20rpx 0 0 0;
-        background-color: #fff;
-        border-radius: 16rpx;
-		.nav-item{
-			width: 164rpx;
-			height: auto;
-			float: left;
-			margin-bottom: 30rpx;
-			margin-right: 15.3rpx;
-			&:nth-child(4){
-				margin-right: 0;
-			}
-			&:nth-child(8){
-				margin-right: 0;
-			}
-			.icon{
+		float: left;
+		margin-bottom: 30rpx;
+		.icon {
+			width: 110rpx;
+			height: 110rpx;
+			margin: 0 auto;
+			position: relative;
+			.icon-image {
 				width: 110rpx;
 				height: 110rpx;
-				margin: 0 auto;
-				position: relative;
-				.icon-image{
-					width: 110rpx;
-					height: 110rpx;
-					display: block;
-				}
-				.icon-new{
-					width: 44rpx;
-					height: 22rpx;
-					display: block;
-					position: absolute;
-					right: 0;
-					top: 20rpx;
-				}
-			}
-			.name{
-				width: 100%;
-				height: 40rpx;
-				line-height: 40rpx;
-				text-align: center;
-				font-size: $font-size-26;
-				color: #666666;
+				display: block;
 			}
-			.nav-cell-main{
-				width: 100%;
-				height: auto;
+			.icon-new {
+				width: 44rpx;
+				height: 22rpx;
+				display: block;
 				position: absolute;
 				right: 0;
-				.nav-cell{
-					width: 164rpx;
-					height: auto;
-					float: left;
-					margin-bottom: 30rpx;
-					margin-right: 15.3rpx;
-					&:nth-child(4){
-						margin-right: 0;
-					}
-					&:nth-child(8){
-						margin-right: 0;
-					}
-					.icon{
+				top: 20rpx;
+			}
+		}
+		.name {
+			width: 100%;
+			height: 40rpx;
+			line-height: 40rpx;
+			text-align: center;
+			font-size: $font-size-26;
+			color: #666666;
+		}
+		.nav-cell-main {
+			width: 100%;
+			height: auto;
+			position: absolute;
+			right: 0;
+			.nav-cell {
+				width: 164rpx;
+				height: auto;
+				float: left;
+				margin-bottom: 30rpx;
+				margin-right: 15.3rpx;
+				&:nth-child(4) {
+					margin-right: 0;
+				}
+				&:nth-child(8) {
+					margin-right: 0;
+				}
+				.icon {
+					width: 130rpx;
+					height: 130rpx;
+					margin: 0 auto;
+					position: relative;
+					.icon-image {
 						width: 130rpx;
 						height: 130rpx;
-						margin: 0 auto;
-						position: relative;
-						.icon-image{
-							width: 130rpx;
-							height: 130rpx;
-							display: block;
-						}
-						.icon-new{
-							width: 44rpx;
-							height: 22rpx;
-							display: block;
-							position: absolute;
-							right: 0;
-							top: 20rpx;
-						}
+						display: block;
 					}
-					.name{
-						width: 100%;
-						height: 40rpx;
-						line-height: 40rpx;
-						text-align: center;
-						font-size: $font-size-28;
-						color: #666666;
+					.icon-new {
+						width: 44rpx;
+						height: 22rpx;
+						display: block;
+						position: absolute;
+						right: 0;
+						top: 20rpx;
 					}
 				}
+				.name {
+					width: 100%;
+					height: 40rpx;
+					line-height: 40rpx;
+					text-align: center;
+					font-size: $font-size-28;
+					color: #666666;
+				}
 			}
 		}
 	}
+}
 </style>

+ 8 - 1
pages.json

@@ -5,7 +5,7 @@
 			"style": {
 				"navigationBarTitleText": "采美采购商城",
 				"enablePullDownRefresh": true,
-				"backgroundColor": "#ff5b00",
+				"backgroundColor": "#FFFFFF",
 				"backgroundTextStyle": "light",
 				"navigationStyle": "custom"
 			}
@@ -189,6 +189,13 @@
                 		"navigationBarTitleText": "文件预览",
                 		"enablePullDownRefresh": false
                 	}
+                },
+                {
+                	"path": "channel",
+                	"style": {
+                		"navigationBarTitleText": "全部频道",
+                		"enablePullDownRefresh": false
+                	}
                 }
 			]
 		},

+ 100 - 0
pages/goods/channel.vue

@@ -0,0 +1,100 @@
+<template>
+	<view class="container clearfix" >
+		<tui-skeleton
+			v-if="skeletonShow"
+			backgroundColor="#fafafa"
+			borderRadius="10rpx"
+			:isLoading="true"
+			:loadingType="5"
+		/>
+		<template v-else>
+			<view class="navbars-content">
+				<view class="nav-item" v-for="(item,index) in list" :key="index" @click="NavToDetailPage(item,index)">
+					<view class="icon">
+						<image class="icon-image" :src="item.icon" mode="widthFix"></image>
+					</view>
+					<view class="name">{{ item.name }}</view>
+				</view>
+			</view>
+		</template> 	
+	</view>
+</template> 
+
+<script>
+	import cmsMixins from '@/mixins/cmsMixins.js'
+	import { mapState,mapMutations} from 'vuex';
+	export default{
+		mixins: [cmsMixins],
+		data(){
+			return{ 
+				skeletonShow: true,
+				list:[]
+			} 
+		},
+		onLoad(option) {
+			
+		},
+		methods:{
+			async getHomeInformation() {
+				//初始化首页数据
+				try{
+					const res = await this.CommonService.GetHomeModulesDataInfo({ source: 2 })
+					const data = res.data
+					this.list = data.shortcutList || [] // 快捷运营
+					setTimeout(() => {
+						this.skeletonShow = false
+					}, 1000)
+				}catch(e){
+					//TODO handle the exception
+					this.$util.msg(error.msg, 2000)
+				}
+			},
+			// 链接跳转
+			NavToDetailPage(pros) {
+			    // 采美快捷运营点击量统计
+			    this.cmsMoudleHits(4, pros.id)
+				this.$api.FlooryNavigateTo(pros)
+			},
+		},
+		onShow() {
+			this.getHomeInformation()
+		}
+	}
+</script>
+
+<style lang="scss">
+	page{
+		background-color: #FFFFFF;
+	}
+	.navbars-content{
+		width: 100%;
+		height: auto;
+		box-sizing: border-box;
+	    padding: 40rpx 57rpx;
+		.nav-item{
+			width: 25%;
+			height: auto;
+			float: left;
+			margin-bottom: 40rpx;
+			.icon{
+				width: 100rpx;
+				height: 100rpx;
+				margin: 0 auto;
+				position: relative;
+				.icon-image{
+					width: 100rpx;
+					height: 100rpx;
+					display: block;
+				}
+			}
+			.name{
+				width: 100%;
+				height: 40rpx;
+				line-height: 40rpx;
+				text-align: center;
+				font-size: $font-size-26;
+				color: #666666;
+			}
+		}
+	}
+</style>

+ 1 - 0
pages/seller/cart/cart.vue

@@ -103,6 +103,7 @@
 																maxlength="6"
 																v-model="pros.number"
 																@blur="changeNnmber($event, item, pros)"
+																cursor-spacing="80"
 															/>
 															<view
 																class="iconfont icon-jiahao"

+ 1 - 0
pages/seller/cart/components/cm-unit-popup.vue

@@ -86,6 +86,7 @@
 									v-model="productCount"
 									maxlength="4"
 									@blur="changeNumber($event)"
+									cursor-spacing="120"
 								/>
 								<view
 									class="iconfont icon-jiahao"

+ 10 - 13
pages/seller/components/home.vue

@@ -1,15 +1,13 @@
 <template>
 	<view class="container home clearfix" :style="{paddingTop:CustomBar+'px'}">
-		<customer ref="customer" :isScroll="isScroll" :navbar-data='nvabarData'></customer>
-		<!-- 主页内容 -->
 		<tui-skeleton v-if="skeletonShow" backgroundColor="#fafafa" borderRadius="10rpx" :isLoading	="true" :loadingType="5" />
+		<customer ref="customer" :isScroll="isScroll" :navbar-data="nvabarData" :navBarsList="navBarsList" v-if="isNavRequest" />
+		<!-- 主页内容 -->
 		<view class="container-home tui-skeleton">
 			<!-- 轮播 -->
 			<banner :list="bannerImageList" v-if="isNavRequest" />
 			<!-- 金刚区菜单 -->
-			<navbars :list="navBarsList" v-if="isNavRequest" />
-            <!-- 快捷运营 -->
-            <quick-opera :list="shortcutList" v-if="isNavRequest && shortcutList.length > 0"/>
+			<navbars :list="shortcutList" v-if="isNavRequest" />
 			<!-- 直播 -->
 			<page-special :templateData="templateData" v-if="isLiveRequest" />
 			<!-- 新品橱窗 -->
@@ -39,7 +37,6 @@
 	import Certificate from '@/components/cm-module/homeIndex/certificate.vue'
 	import pageSpecial from '@/components/cm-module/homeIndex/pageSpecial.vue'
 	import supplierList from '@/components/cm-module/homeIndex/supplierList.vue'
-    import quickOpera from '@/components/cm-module/homeIndex/quickOperation.vue'
 	import { mapState,mapMutations} from 'vuex'
 	export default {
 		components:{
@@ -50,18 +47,18 @@
 			pageFloor,
 			Certificate,
 			pageSpecial,
-			supplierList,
-            quickOpera
+			supplierList
 		},
 		data() {
 			return {
-				nvabarData: {//顶部自定义导航
+				nvabarData: {
+					// 顶部自定义导航
 					showCapsule: 1, // 是否显示左上角图标  1表示显示  0表示不显示,
 					showSearch: 0,
 					title: '采美采购商城', // 导航栏 中间的标题
-					haveBack:false,
-					textLeft:this.$store.state.isIphone,
-					textColor:'#FFFFFF'
+					haveBack: false,
+					textLeft: this.$store.state.isIphone,
+					textColor: '#333333'
 				},
 				CustomBar:this.CustomBar,// 顶部导航栏高度
 				userID:0,
@@ -185,7 +182,7 @@
 
 <style lang="scss">
 	.home{
-		background-color: #ff5b00;
+		background-color: #FFFFFF;
 	}
 	.container-section{
 		width: 100%;

+ 5 - 10
pages/tabBar/home/index.vue

@@ -1,7 +1,5 @@
 <template>
 	<view class="container home clearfix" :style="{ paddingTop: CustomBar + 'px' }">
-		<customer ref="customer" :isScroll="isScroll" :navbar-data="nvabarData"></customer>
-		<!-- 主页内容 -->
 		<tui-skeleton
 			v-if="skeletonShow"
 			backgroundColor="#fafafa"
@@ -9,13 +7,12 @@
 			:isLoading="true"
 			:loadingType="5"
 		/>
+		<customer ref="customer" :isScroll="isScroll" :navbar-data="nvabarData" :navBarsList="navBarsList" v-if="isNavRequest" />		<!-- 主页内容 -->
 		<view class="container-home tui-skeleton">
 			<!-- 轮播 -->
-			<banner :list="bannerImageList" :newsList="newsList"  v-if="isNavRequest" />
+			<banner :list="bannerImageList" v-if="isNavRequest" />
 			<!-- 金刚区菜单 -->
-			<navbars :list="navBarsList" v-if="isNavRequest" />
-            <!-- 快捷运营 -->
-            <quick-opera :list="shortcutList" v-if="isNavRequest && shortcutList.length > 0"/>
+			<navbars :list="shortcutList" v-if="isNavRequest" />
 			<!-- 优惠券入口 -->
 			<coupon v-if="isNavRequest && couponEntry == 1" />
 			<!-- 直播 -->
@@ -63,7 +60,6 @@ import pageSpecial from '@/components/cm-module/homeIndex/pageSpecial.vue'
 import supplierList from '@/components/cm-module/homeIndex/supplierList.vue'
 import activityAlert from '@/components/cm-module/activity/activity.vue'
 import activityBean from '@/components/cm-module/activity/activityBean.vue'
-import quickOpera from '@/components/cm-module/homeIndex/quickOperation.vue'
 import cmSellerModal from '@/components/cm-share-popup/cm-seller-modal.vue'
 import homeMiXins from './index.js'
 export default {
@@ -80,7 +76,6 @@ export default {
 		supplierList,
 		activityAlert,
 		activityBean,
-        quickOpera,
         cmSellerModal
 	},
 	data() {
@@ -92,7 +87,7 @@ export default {
 				title: '采美采购商城', // 导航栏 中间的标题
 				haveBack: false,
 				textLeft: this.$store.state.isIphone,
-				textColor: '#FFFFFF'
+				textColor: '#333333'
 			},
 			CustomBar: this.CustomBar, // 顶部导航栏高度
 			isScrollTop: false,
@@ -166,7 +161,7 @@ export default {
 
 <style lang="scss">
 page {
-	background-color: #ff5b00;
+	background-color: #ffffff;
 }
 .container-section {
 	width: 100%;