Browse Source

云生态

zys
kk_888 3 years ago
parent
commit
8876ab7322
  1. 4
      config/index.js
  2. 7
      pages.json
  3. 194
      pages/demandHall/business/index.vue
  4. 5
      pages/demandHall/demoInvestment/index.vue
  5. 66
      pages/demandHall/enterpriseServer/index.vue
  6. 99
      pages/demandHall/supplyHall/index.vue
  7. 61
      pages/home/activityCenter/index.vue
  8. 2
      pages/information/index.vue
  9. 560
      pages/life/index2.vue
  10. 74
      pages/life/learnMore/index.vue
  11. 32
      pages/shop/GoodSearch/index.vue
  12. BIN
      static/images/life-icon1.png
  13. BIN
      static/images/life-icon2.png
  14. BIN
      static/images/life-icon3.png
  15. BIN
      static/images/life-icon4.png

4
config/index.js

@ -1,8 +1,8 @@
// export const VUE_APP_API_URL = 'http://natapp.xinxintuan.co/api';
// export const VUE_APP_API_URL = 'https://wxapi.yixiang.co/api'
// export const VUE_APP_API_URL = 'http://192.168.0.112:8092/api'
export const VUE_APP_API_URL = 'http://10.11.32.103:8092/api'
// export const VUE_APP_API_URL = 'https://cloud.api.cyjyyjy.com/api'
// export const VUE_APP_API_URL = 'http://10.11.32.103:8092/api'
export const VUE_APP_API_URL = 'https://cloud.api.cyjyyjy.com/api'
// export const VUE_APP_API_URL = 'http://natapp.xinxintuan.co/api';
// export const VUE_APP_API_URL = 'https://thapi.xinxintuan.co/api'
// export const VUE_APP_API_URL = 'https://h5api.xinxintuan.co/api';

7
pages.json

@ -320,6 +320,13 @@
"enablePullDownRefresh": true
}
},
{
"path": "pages/life/index2",
"style": {
"navigationBarTitleText": "生活",
"enablePullDownRefresh": true
}
},
{
"path": "pages/life/temp/index",
"style": {

194
pages/demandHall/business/index.vue

@ -30,7 +30,8 @@
<view class="news-con acea-row row-middle">
<image src="../../../static/images/rem-icon.png"></image>
<view class="notice-swiper">
<NewsSwiper :list="isRecommend" :interval="4000" @toArticleDetail="toArticleDetail"></NewsSwiper>
<NewsSwiper :list="isRecommend" :interval="4000" @toArticleDetail="toArticleDetail">
</NewsSwiper>
</view>
</view>
</view>
@ -40,13 +41,13 @@
<view class="company-box">
<view class="title-con acea-row">
<image src="../../../static/images/business-title1.png" class="title-img"></image>
<view class="update-icon acea-row row-center-wrapper" @click="replaceClick">
<view class="update-icon acea-row row-center-wrapper" @click="replaceClick">
<image src="../../../static/images/update-icon.png" :class="showCirc ? 'circ' : ''"></image>换一批
</view>
</view>
<scroll-view class="scroll-view_H acea-row" scroll-x="true">
<view class="company-list" v-for="(item,index) in enterpriseList" :key="index">
<view class="title">{{item.enterpriseName}}</view>
<view class="title line1">{{item.enterpriseName}}</view>
<view class="category-box acea-row">
<view class="tag" :class="index%2 == 0 ? 'tag-item-b' : 'tag-item-y' ">{{item.cname}}</view>
<!-- <view class="tag-item-y tag">财务规范</view>
@ -121,11 +122,20 @@
</template>
<script>
import { getArticle } from "@/api/home";
import { briefing, supply, listResourcesCagetory, listEnterprise } from "@/api/business"
import {
getArticle
} from "@/api/home";
import {
briefing,
supply,
listResourcesCagetory,
listEnterprise
} from "@/api/business"
import NewsSwiper from "./newsSwiper.vue"
export default {
components:{ NewsSwiper },
components: {
NewsSwiper
},
data() {
return {
showCirc: false,
@ -136,73 +146,73 @@
enterpriseList: []
};
},
mounted(){
mounted() {
this.getArticleList()
this.getSupplyList()
this.getCagetoryList()
this.getEnterpriseList()
},
methods:{
methods: {
//
getArticleList(){
briefing().then((res)=>{
const articleList= res.data
this.isHotList = articleList.filter(item=> item.isHot == 1)
this.isRecommend = articleList.filter(item=> item.isRecommend == 1)
getArticleList() {
briefing().then((res) => {
const articleList = res.data
this.isHotList = articleList.filter(item => item.isHot == 1)
this.isRecommend = articleList.filter(item => item.isRecommend == 1)
})
},
toArticleDetail(id){
toArticleDetail(id) {
uni.navigateTo({
url:"/pages/life/articleDetail/index?id=" + id
url: "/pages/life/articleDetail/index?id=" + id
})
},
//
getSupplyList(){
supply().then((res)=>{
getSupplyList() {
supply().then((res) => {
this.supplyList = res.data
})
},
//
getCagetoryList(){
listResourcesCagetory().then((res)=>{
getCagetoryList() {
listResourcesCagetory().then((res) => {
this.cagetoryList = res.data
})
},
//
getEnterpriseList(){
listEnterprise().then((res)=>{
getEnterpriseList() {
listEnterprise().then((res) => {
this.enterpriseList = res.data
this.showCirc = false
})
},
toCompanyDetail(id){
toCompanyDetail(id) {
uni.navigateTo({
url:"/pages/life/articleDetail/index?id=" + id
url: "/pages/life/articleDetail/index?id=" + id
})
},
//
replaceClick(){
if(!this.showCirc){
replaceClick() {
if (!this.showCirc) {
this.showCirc = true;
this.getEnterpriseList()
}
},
//
toSupplyHall(e){
toSupplyHall(e) {
uni.navigateTo({
url:"/pages/demandHall/supplyHall/index"
url: "/pages/demandHall/supplyHall/index"
})
},
//
toEnterpriseServer(e){
toEnterpriseServer(e) {
uni.navigateTo({
url:"/pages/demandHall/enterpriseServer/index"
url: "/pages/demandHall/enterpriseServer/index"
})
},
//
toDemoInvestment(e){
toDemoInvestment(e) {
uni.showModal({
title:'提示!',
title: '提示!',
content: '模块开发中,请等待...',
showCancel: false
})
@ -211,13 +221,13 @@
// })
},
//
toAuthentication(e){
toAuthentication(e) {
uni.navigateTo({
url:"/pages/release/index2"
url: "/pages/release/index2"
})
}
},
}
</script>
@ -230,6 +240,37 @@
margin-bottom: 100rpx;
}
.category-box {
width: 100%;
height: 36rpx;
overflow: hidden;
.tag {
// width: 112rpx;
padding: 0 10rpx;
height: 36rpx;
line-height: 33rpx;
border-radius: 4rpx;
font-size: 20rpx;
margin-right: 16rpx;
text-align: center;
}
.tag-item-b {
border: 1rpx solid #3A9EFA;
color: #3A9EFA;
}
.tag-item-y {
border: 1px solid #FFAA00;
color: #FFAA00;
}
.tag-item-p {
color: #FC9367;
border: 1px solid #FC9367;
}
}
//
.search-box {
width: 670rpx;
@ -237,6 +278,7 @@
border: 2rpx solid #FF5100;
border-radius: 8rpx;
margin: 24rpx auto;
position: relative;
.search-icon {
width: 35rpx;
@ -245,9 +287,11 @@
}
.search {
margin-left: auto;
// margin-left: auto;
position: absolute;
right: -2rpx;
width: 132rpx;
height: 66rpx;
height: 68rpx;
background: linear-gradient(39deg, #FF5100 0%, #FFA074 100%);
border-radius: 8rpx;
color: #fff;
@ -294,18 +338,23 @@
height: 78rpx;
margin-left: 18rpx;
}
.news-con-box{
.news-con-box {
width: calc(100% - 100rpx);
}
.news-con {
margin-bottom: 6rpx;
.notice-swiper{
.notice-swiper {
width: calc(100% - 116rpx);
height: 34rpx;
}
.scroll-Y{
.scroll-Y {
height: 34rpx;
.swiper-item{
.swiper-item {
height: 34rpx;
}
}
@ -327,12 +376,13 @@
width: 134rpx;
height: 46rpx;
}
@keyframes doCric{
@keyframes doCric {
0% {
transform: rotate(0deg);
}
100%{
100% {
transform: rotate(360deg);
}
}
@ -350,7 +400,7 @@
line-height: 26rpx;
color: #666666;
margin-left: auto;
}
.update-icon image {
@ -359,7 +409,8 @@
background: rgba(0, 0, 0, 0);
margin-right: 10rpx;
}
.update-icon .circ{
.update-icon .circ {
animation: doCric 1s ease;
}
@ -386,32 +437,6 @@
margin: 5rpx 0 10rpx 0;
}
.category-box {
.tag {
width: 112rpx;
height: 36rpx;
border-radius: 4rpx;
font-size: 20rpx;
margin-right: 8rpx;
text-align: center;
}
.tag-item-b {
border: 1rpx solid #3A9EFA;
color: #3A9EFA;
}
.tag-item-y {
border: 1px solid #FFAA00;
color: #FFAA00;
}
.tag-item-p {
color: #FC9367;
border: 1px solid #FC9367;
}
}
.title-s {
height: 32rpx;
font-weight: 400;
@ -584,33 +609,6 @@
font-size: 24rpx;
color: #707070;
}
.category-box {
.tag {
width: 112rpx;
height: 36rpx;
line-height: 33rpx;
border-radius: 4rpx;
font-size: 20rpx;
margin-right: 16rpx;
text-align: center;
}
.tag-item-b {
border: 1rpx solid #3A9EFA;
color: #3A9EFA;
}
.tag-item-y {
border: 1px solid #FFAA00;
color: #FFAA00;
}
.tag-item-p {
color: #FC9367;
border: 1px solid #FC9367;
}
}
}
}
}

5
pages/demandHall/demoInvestment/index.vue

@ -240,6 +240,7 @@
border: 2rpx solid #FF5100;
border-radius: 8rpx;
margin: 0 auto;
position: relative;
.search-img {
width: 35rpx;
height: 35rpx;
@ -247,12 +248,14 @@
}
}
.search {
// margin-left: auto;
position: absolute;
right: -2rpx;
width: 132rpx;
height: 68rpx;
background: linear-gradient(39deg, #FF5100 0%, #FFA074 100%);
border-radius: 8rpx;
color: #fff;
margin-left: auto;
}
.resource-tabs {
width: 100%;

66
pages/demandHall/enterpriseServer/index.vue

@ -29,7 +29,7 @@
<view class="enterprise-con acea-row">
<image src="../../../static/images/home/menu6.png" class="enterprise-img"></image>
<view class="content-right acea-row row-column-between">
<view>APP开发平台搭建外卖小程序返现H5定制一站式解决</view>
<view class="line2">APP开发平台搭建外卖小程序返现H5定制一站式解决</view>
<view class="category-box acea-row">
<view class="tag-item-b tag">商务合作</view>
<view class="tag-item-y tag">场地租赁</view>
@ -50,16 +50,14 @@
{{item.enterpriseType == 1 ? '企业' : '个人'}}
</view>
<view class="business-con acea-row">
<view>
<image :src="item.enterpriseLogo" class="logo-img"></image>
</view>
<view>
<view class="title-h">{{item.enterpriseName}}</view>
<view class="title-h line1">{{item.enterpriseName}}</view>
<view class="category-box acea-row">
<view class="tag-item-b tag">{{item.cname}}</view>
<!-- <view class="tag-item-y tag"></view> -->
</view>
<view class="title-s">{{item.enterpriseTitle}}</view>
<view class="title-s line2">{{item.enterpriseTitle}}</view>
</view>
</view>
<vie class="business-img acea-row row-around">
@ -207,7 +205,7 @@
}
</script>
<style>
<style lang="less">
.supplyHall-page {
width: 100%;
min-height: 100vh;
@ -229,6 +227,7 @@
border: 2rpx solid #FF5100;
border-radius: 8rpx;
margin: 0 auto;
position: relative;
}
.search-box image {
@ -236,14 +235,19 @@
height: 35rpx;
margin: 0 29rpx 0 52rpx;
}
.search-box input {
width: 400rpx;
}
.search {
margin-left: auto;
/* margin-left: auto; */
width: 132rpx;
height: 68rpx;
background: linear-gradient(39deg, #FF5100 0%, #FFA074 100%);
border-radius: 8rpx;
color: #fff;
position: absolute;
right: -2rpx;
}
.resource-tabs {
@ -337,27 +341,34 @@
}
.category-box{
width: 100%;
height: 36rpx;
overflow: hidden;
.tag {
width: auto;
height: 36rpx;
line-height: 28rpx;
border-radius: 4rpx;
font-size: 20rpx;
margin-right: 8rpx;
text-align: center;
padding: 0 10rpx;
}
.tag-item-b {
border: 1rpx solid #3A9EFA;
color: #3A9EFA;
}
.tag-item-y {
border: 1px solid #FFAA00;
color: #FFAA00;
}
.tag-item-p {
color: #FC9367;
border: 1px solid #FC9367;
}
}
.tag {
width: auto;
padding: 0rpx 10rpx;
line-height: 26rpx;
border-radius: 4rpx;
font-size: 20rpx;
margin-right: 8rpx;
text-align: center;
}
.tag-item-b {
border: 1rpx solid #3A9EFA;
color: #3A9EFA;
}
.tag-item-y {
border: 1px solid #FFAA00;
color: #FFAA00;
}
.tag-item-p {
color: #FC9367;
border: 1px solid #FC9367;
@ -457,6 +468,7 @@
}
.title-h {
width: 450rpx;
height: 44rpx;
font-size: 32rpx;
color: #1D1D1D;

99
pages/demandHall/supplyHall/index.vue

@ -49,9 +49,9 @@
{{item.enterpriseType == 1 ? '企业' : '个人'}}
</view>
<view class="enterprise-box acea-row row-column-between">
<view class="title-h">{{item.title}}</view>
<view class="title-h line1">{{item.title}}</view>
<view class="enterprise-price">{{item.capital}}</view>
<view class="supply-screen acea-row">
<view class="category-box acea-row">
<!-- <view class="tag-item-y tag">网站建设</view>
<view class="tag-item-p tag">APP开发</view> -->
<view class="tag-item-p tag">{{item.cname}}</view>
@ -60,10 +60,11 @@
<view class="enterprise-info acea-row row-middle">
<image :src="item.resourceImgs" mode="" class="head-logo"></image>
<view class="user-name">{{item.enterpriseName}}</view>
<view class="todetails">查看详情</view>
</view>
</view>
<view class="todetails">查看详情</view>
</view>
<LoadStatus :loadStatus="loadStatus"></LoadStatus>
</view>
@ -79,14 +80,16 @@
<view class="user-address">武汉</view>
<view class="user-price">20,000</view>
</view>
<view class="supply-con">李先生需要景区方面资源洽谈相关合作</view>
<view class="supply-con line2">李先生需要景区方面资源洽谈相关合作</view>
<view class="category-box acea-row">
<view class="tag-item-b tag">商务合作</view>
<view class="tag-item-y tag">场地租赁</view>
</view>
<view class="time-end">2021.8.30截止报名</view>
<view class="acea-row row-middle">
<view class="time-end">2021.8.30截止报名</view>
<view class="todetails">查看详情</view>
</view>
</view>
<view class="todetails">查看详情</view>
</view>
<view class="enterprise-list">
<view :class="'tips-item' + (item.enterpriseType == 2 ? ' bg2' : '' )">
@ -95,7 +98,7 @@
<view class="enterprise-con acea-row">
<image src="../../../static/images/home/menu6.png" class="enterprise-img"></image>
<view class="content-right acea-row row-column-between">
<view>APP开发平台搭建外卖小程序返现H5定制一站式解决</view>
<view class="line2">APP开发平台搭建外卖小程序返现H5定制一站式解决</view>
<view class="category-box acea-row">
<view class="tag-item-b tag">商务合作</view>
<view class="tag-item-y tag">场地租赁</view>
@ -106,8 +109,9 @@
<view class="enterprise-info acea-row row-middle mt20">
<image src="../../../static/images/cart.png" mode="" class="head-logo"></image>
<view class="user-name">湖北知音动漫有限公司</view>
<view class="todetails">查看详情</view>
</view>
<view class="todetails">查看详情</view>
</view>
<LoadStatus :loadStatus="loadStatus"></LoadStatus>
</view>
@ -314,6 +318,7 @@
border: 2rpx solid #FF5100;
border-radius: 8rpx;
margin: 0 auto;
position: relative;
}
.search-box image {
@ -323,12 +328,14 @@
}
.search {
margin-left: auto;
// margin-left: auto;
width: 132rpx;
height: 64rpx;
height: 68rpx;
background: linear-gradient(39deg, #FF5100 0%, #FFA074 100%);
border-radius: 8rpx;
color: #fff;
position: absolute;
right: -2rpx;
}
.resource-tabs {
@ -428,8 +435,8 @@
}
.info-box {
height: 214rpx;
padding-left: 20rpx;
min-height: 214rpx;
padding: 0 58rpx 0 20rpx;
}
.head-img {
@ -463,35 +470,43 @@
}
.supply-con {
height: 40rpx;
width: 100%;
height: auto;
color: #1D1D1D;
font-weight: 600;
padding: 10rpx 0;
}
.tag {
width: auto;
line-height: 28rpx;
border-radius: 4rpx;
font-size: 20rpx;
margin-right: 8rpx;
text-align: center;
padding: 0 10rpx;
}
.tag-item-b {
border: 1rpx solid #3A9EFA;
color: #3A9EFA;
}
.tag-item-y {
border: 1px solid #FFAA00;
color: #FFAA00;
}
.tag-item-p {
color: #FC9367;
border: 1px solid #FC9367;
.category-box{
width: 100%;
height: 36rpx;
overflow: hidden;
.tag {
width: auto;
height: 36rpx;
line-height: 28rpx;
border-radius: 4rpx;
font-size: 20rpx;
margin-right: 8rpx;
text-align: center;
padding: 0 10rpx;
}
.tag-item-b {
border: 1rpx solid #3A9EFA;
color: #3A9EFA;
}
.tag-item-y {
border: 1px solid #FFAA00;
color: #FFAA00;
}
.tag-item-p {
color: #FC9367;
border: 1px solid #FC9367;
}
}
.time-end {
height: 34rpx;
@ -505,9 +520,7 @@
line-height: 44rpx;
background: linear-gradient(141deg, #FFA782 0%, #FF6D31 100%);
border-radius: 8rpx;
position: absolute;
right: 18rpx;
bottom: 38rpx;
margin-left: auto;
text-align: center;
color: #fff;
}
@ -524,11 +537,11 @@
.enterprise-box {
height: 208rpx;
padding-left: 20rpx;
padding: 0 20rpx;
}
.title-h {
width: 456rpx;
width: 100%;
height: 35rpx;
line-height: 35rpx;
font-size: 32rpx;
@ -581,7 +594,7 @@
}
.mt20 {
padding-left: 20rpx;
padding: 0 20rpx;
}

61
pages/home/activityCenter/index.vue

@ -2,9 +2,12 @@
<!-- sdsd 345 -->
<view class="activityCenter-page">
<image src="https://download.cyjyyjy.com/center-img.png" class="top-bg"></image>
<view class="page-title"
:style="'top:' + menuTop + 'px;height:' + menuHeight + 'px;line-height: ' + menuHeight + 'px;'">
活动中心</view>
<view class="pageTitle-box" :class="isFixed ? 'showPageTitle' : ''"
:style="{'padding-top':navTopHeight + 'px',height:navHeight*2+ 'px'}">
<view class="page-title acea-row row-center row-middle"
:style="'top:' + menuTop + 'px;height:' + menuHeight + 'px;line-height: ' + menuHeight + 'px;'"><image src="../../../static/images/arror-right.png" mode="" class="page-back" @tap="toBackHome"></image>活动中心
</view>
</view>
<view class="activity-box">
<view class="activity-list acea-row" v-for="(item,index) in activity" :key="index" @tap="toActiveDetail"
:data-id="item.id">
@ -39,8 +42,18 @@
data() {
return {
menuHeight: app.globalData.menuHeight,
navHeight: app.globalData.navHeight,
menuTop: app.globalData.menuTop,
navTopHeight: app.globalData.navTopHeight,
activity: [], //
isFixed: false,
};
},
onPageScroll(e) {
if (e.scrollTop > 60) {
this.isFixed = true;
} else {
this.isFixed = false;
};
},
mounted: function() {
@ -58,6 +71,10 @@
url: '/pages/activity/detail/index?id=' + id
});
},
toBackHome(e){
console.log("1")
uni.navigateBack();
}
}
}
</script>
@ -73,13 +90,49 @@
.top-bg {
width: 100%;
height: 1210rpx;
position: absolute;
}
.pageTitle-box {
width: 100%;
position: fixed;
top: 0;
z-index: 99;
transition: all .5s;
}
.showPageTitle {
background: #fff;
color: #000000 !important;
opacity: 1;
.page-title {
color: #000;
}
.page-back {
width: 18rpx;
height: 30rpx;
background: url(../../../static/images/arror-right.png) no-repeat center center;
background-size: 100% 100%;
transform: rotateY(180deg);
}
}
.page-title {
position: absolute;
width: 100%;
color: #fff;
position: absolute;
font-weight: 600;
font-size: 32rpx;
text-align: center;
transition: all .5s cubic-bezier(.25, .5, .5, .9);
}
.page-back {
width: 18rpx;
height: 30rpx;
position: absolute;
left: 40rpx;
transform: rotateY(180deg);
}
.activity-box {

2
pages/information/index.vue

@ -200,7 +200,7 @@
.search {
position: absolute;
right: 0;
right: -2rpx;
width: 132rpx;
height: 68rpx;
background: linear-gradient(39deg, #FF5100 0%, #FFA074 100%);

560
pages/life/index2.vue

@ -0,0 +1,560 @@
<template>
<view class="productSort">
<view class="page-top-box" :class="isFixed == true ? 'on' : ''">
<view class="top-box acea-row row-between-wrapper">
<view class="top-box-l acea-row row-middle">
<image src="../../static/images/localtion.png"></image>
<text>武汉</text>
</view>
<view class="cart-btn-box" @click="goShoppingCart()">
<image src="../../static/images/cart.png"></image>
</view>
</view>
<view class="search-box acea-row row-middle">
<image src="../../static/images/search.png" mode="" class="search-icon"></image>
<input type="text" value="" placeholder="周末去哪儿聚餐" @click="goGoodSearch()"/>
<view class="search">搜一下</view>
</view>
</view>
<!-- <view class="banner-img-box acea-row row-between-wrapper">
<view class="img-box-l">
<image src="https://download.cyjyyjy.com/life1.png" @click="alertMessage('功能开发中...')"></image>
</view>
<view class="img-box-r">
<image src="https://download.cyjyyjy.com/life2.png" @click="alertMessage('功能开发中...')"></image>
<image src="https://download.cyjyyjy.com/life3.png" @click="alertMessage('功能开发中...')"></image>
</view>
</view> -->
<view class="nav-box">
<image src="../../static/images/business-img1.png" mode="" class="nav-img"></image>
<view class="nav-list acea-row row-between">
<view class="modular acea-row row-center">
<image src="../../static/images/life-icon1.png" mode=""></image>
<view>至尊宝座</view>
</view>
<view class="modular acea-row row-center">
<image src="../../static/images/life-icon2.png" mode=""></image>
<view>优选好房</view>
</view>
<view class="modular acea-row row-center">
<image src="../../static/images/life-icon3.png" mode=""></image>
<view>权益福利</view>
</view>
<view class="modular acea-row row-center">
<image src="../../static/images/life-icon4.png" mode=""></image>
<view>商超福利</view>
</view>
</view>
</view>
<view class="category-tab-box">
<scroll-view class="scroll-view_H" scroll-x="true">
<view class="category-item category-item-active" >猜您喜欢</view>
<view class="category-item">至尊保驾</view>
<view class="category-item">优选好房</view>
<view class="category-item">商城福利</view>
<view class="category-item">回头率榜单</view>
</scroll-view>
</view>
<view class="warter-box">
<!-- <view class="headline">
<image src="../../static/images/rec-title.png" mode=""></image>
</view> -->
<u-waterfall v-model="flowList" ref="uWaterfall">
<template v-slot:left="{ leftList }">
<view
class="warter"
v-for="(item, index) in leftList"
:key="index"
@tap="toGoodsDetail(item.id)"
>
<image
class="warter-img"
:src="item.image"
:index="index"
mode="widthFix"
></image>
<view class="goodsinfo-box">
<view class="title line2"> {{ item.storeName }} </view>
<view class="price-box acea-row row-between-wrapper">
<text class="price">{{ item.price }}</text>
<text class="old-price">{{ item.price }}</text>
</view>
</view>
</view>
</template>
<template v-slot:right="{ rightList }">
<view
class="warter"
v-for="(item, index) in rightList"
:key="index"
@tap="toGoodsDetail(item.id)"
>
<image
class="warter-img"
:src="item.image"
:index="index"
mode="widthFix"
></image>
<view class="goodsinfo-box">
<view class="title line2"> {{ item.storeName }} </view>
<view class="price-box acea-row row-between-wrapper">
<text class="price">{{ item.price }}</text>
<text class="old-price">{{ item.otPrice }}</text>
</view>
</view>
</view>
</template>
</u-waterfall>
<u-loadmore
bg-color="rgb(240, 240, 240)"
:status="loadStatus"
@loadmore="addRandomData"
></u-loadmore>
</view>
<!-- <tabbar :current="currentTabIndex" @click="tabBarClick"></tabbar> -->
</view>
</template>
<script>
import { getCategory, getProducts, getArticle, getActivity } from "@/api/store";
import { trim } from "@/utils";
import { mapGetters } from "vuex";
import tabbar from "../../tabbarComponent/tabbar";
import vSwiper from "@/components/vSwiper.vue";
const app = getApp();
export default {
components: {
tabbar,
vSwiper,
},
name: "GoodsClass",
computed: mapGetters(["userInfo"]),
props: {},
data: function () {
return {
category: [],
navActive: 0,
search: "",
lock: false,
menuHeight: app.globalData.menuHeight,
navHeight: app.globalData.navHeight,
menuTop: app.globalData.menuTop,
currentTabIndex: 3,
flowList: [],
isFixed: false,
loadStatus: "loadmore",
page: 1,
limit: 10,
isLoad: true, //
articleList: [],
active: 1,
show: false,
activity: [],
};
},
watch: {
"$yroute.query.id": function (n) {
if (n) {
this.activeCateId(n);
}
},
},
// onShow: function (options) {
// },
mounted: function () {
this.getProducts();
this.getActivity();
},
onReachBottom() {
if (this.isLoad) {
this.page = this.page + 1;
this.getProducts();
}
},
onPullDownRefresh() {
wx.showNavigationBarLoading();
this.isLoad = true;
this.page = 1;
this.getActivity();
this.clear().then(() => {
this.getProducts();
});
},
methods: {
toAritcleList() {
this.$yrouter.push("/pages/life/articleList/index");
},
async clear() {
this.$refs.uWaterfall.clear();
},
tabBarClick(index) {
this.currentTabIndex = index;
},
goShoppingCart() {
this.$yrouter.push("/pages/shop/ShoppingCart/index");
},
goGoodSearch() {
this.$yrouter.push("/pages/shop/GoodSearch/index");
},
goGoodsList(child) {
this.$yrouter.push({
path: "/pages/shop/GoodsList/index",
query: { id: child.id, title: child.cateName },
});
},
toGoodsDetail(id) {
this.$yrouter.push({
path: "/pages/shop/GoodsCon/index",
query: { id: id },
});
},
activeCateId(n) {
let index = 0;
n = parseInt(n);
if (!n) return;
this.category.forEach((cate, i) => {
if (cate.id === n) index = i;
});
if (index !== this.navActive) {
this.asideTap(index);
}
},
loadCategoryData() {
getCategory().then((res) => {
this.category = res.data;
this.$nextTick(() => {
if (this.$yroute.query.id) {
this.activeCateId(this.$yroute.query.id);
}
});
});
},
getActivity() {
getActivity().then((res) => {
this.articleList = res.data.articleList;
this.activity = res.data.activityList;
});
},
toActiveDetail(e) {
let id = e.currentTarget.dataset.id;
uni.navigateTo({
url: "/pages/activity/detail/index?id=" + id,
});
},
tabClick(i) {
console.log(i, "aiiii");
this.active = i;
},
getProducts() {
this.loadStatus = "loading";
getProducts({ page: this.page, limit: this.limit }).then((res) => {
// console.log(res)
if (this.page > 1) {
this.flowList = this.flowList.concat(res.data);
} else {
this.flowList = res.data;
}
// this.isLoad = this.limit <= res.data.length
if (this.limit <= res.data.length) {
//length
this.isLoad = true;
} else {
console.log("没有了");
this.isLoad = false;
this.loadStatus = "nomore";
}
wx.hideNavigationBarLoading();
uni.stopPullDownRefresh();
});
},
submitForm: function () {
var val = trim(this.search);
if (val) {
this.$yrouter.push({
path: "/pages/shop/GoodsList/index",
query: { s: val },
});
setTimeout(() => (this.search = ""), 500);
}
},
asideTap(index) {
this.navActive = index;
},
alertMessage(msg) {
uni.showToast({
title: msg,
icon: "none",
});
},
},
beforeDestroy: function () {
// document.removeEventListener("scroll", this.onScroll, false);
},
};
</script>
<style lang="scss" scoped>
</style>
<style lang="less" scoped>
.productSort {
// height: 100%;
// padding-bottom: 200rpx;
// background: #eeeeee !important;
position: relative;
}
.page-top-box {
width: 100%;
position: fixed;
top: 0;
left: 0;
z-index: 99;
background: #fff;
padding: 0 30rpx 0rpx;
// box-shadow: 0px -6px 20px rgba(0, 0, 0, 0.11);
.top-box {
.top-box-l {
font-size: 32rpx;
color: #000;
font-weight: 500;
image {
width: 26rpx;
height: 30rpx;
display: block;
margin-right: 10rpx;
}
}
.cart-btn-box {
width: 50rpx;
height: 50rpx;
image {
width: 100%;
height: 100%;
}
}
}
//
.search-box {
width: 670rpx;
height: 68rpx;
border-radius: 8rpx;
margin: 24rpx auto;
background: #EEEEEE;
border-radius: 8rpx;
.search-icon {
width: 35rpx;
height: 35rpx;
margin: 0 29rpx 0 52rpx;
}
.search {
margin-left: auto;
width: 124rpx;
height: 68rpx;
line-height: 65rpx;
text-align: center;
color: #fff;
background: linear-gradient(149deg, #FFA782 0%, #FF6D31 100%);
border-radius: 0rpx 8rpx 8rpx 0rpx;
}
}
}
.nav-box{
width: 100%;
height: auto;
padding: 180rpx 40rpx 0 40rpx;
.nav-img{
width: 100%;
height: 370rpx;
}
.nav-list{
width: 100%;
height: 105rpx;
padding: 0 30rpx;
margin: 24rpx 0 20rpx 0;
.modular{
width: 96rpx;
font-size: 24rpx;
image{
width: 70rpx;
height: 70rpx;
}
}
}
}
.category-tab-box {
width: 100%;
height: 108rpx;
line-height: 108rpx;
padding-left: 30rpx;
.scroll-view_H {
white-space: nowrap;
width: 100%;
.category-item {
display: inline-block;
font-size: 28rpx;
line-height: 40rpx;
color: #999;
margin-right: 40rpx;
&.category-item-active {
color: #ff6d31;
font-size: 32rpx;
font-weight: 500;
position: relative;
&::after {
content: "";
width: 70rpx;
height: 8rpx;
border-radius: 6rpx;
display: block;
position: absolute;
bottom: -24rpx;
left: 0;
background: #ff7942;
}
}
}
}
}
.warter-box {
width: 100%;
padding: 44rpx 24rpx 190rpx 24rpx;
.u-waterfall {
width: 100%;
display: flex;
justify-content: space-between;
.u-column {
.warter {
width: 336rpx !important;
border-radius: 10rpx;
background-color: #ffffff;
position: relative;
overflow: hidden;
box-shadow: 0px 6rpx 12rpx rgba(0, 0, 0, 0.06);
margin-bottom: 20rpx;
image {
width: 100%;
display: block;
}
.goodsinfo-box {
width: 100%;
padding: 12rpx 16rpx;
.title {
font-size: 28rpx;
font-weight: 500;
color: #1d1d1d;
width: 100%;
height: 80rpx;
}
.price {
font-size: 28rpx;
font-weight: bold;
line-height: 40rpx;
color: #ff7942;
}
.old-price {
font-size: 20rpx;
line-height: 28rpx;
color: #bfbfbf;
text-decoration: line-through;
}
}
}
}
}
}
.banner-img-box {
width: 100%;
padding: 220rpx 40rpx 32rpx;
.img-box-l {
width: 324rpx;
height: 400rpx;
image {
width: 100%;
height: 100%;
}
}
.img-box-r {
width: 324rpx;
height: 400rpx;
display: flex;
flex-direction: column;
justify-content: space-between;
// align-items: ;
image {
width: 324rpx;
height: 190rpx;
}
}
}
.goods-list-box {
width: 100%;
padding: 0 30rpx;
.goods-list-item {
width: 100%;
.goods-type-box {
image {
width: 94rpx;
height: 94rpx;
}
.t-word {
font-size: 36rpx;
color: #222;
font-weight: 600;
}
}
.goods-list {
width: 100%;
.goods-item {
width: 335rpx;
background: #fff;
margin-right: 10rpx;
margin-bottom: 30rpx;
border-radius: 10rpx;
overflow: hidden;
box-shadow: 0px 6px 12px rgba(0, 0, 0, 0.06);
image {
width: 100%;
height: 278rpx;
}
}
.goods-item:nth-child(2n) {
margin-right: 0;
}
.goods-desc-box {
width: 100%;
padding: 16rpx;
font-size: 24rpx;
.goods-name {
line-height: 34rpx;
}
.price {
font-size: 28rpx;
color: #e5270f;
line-height: 40rpx;
margin-bottom: 26rpx;
}
}
}
}
}
</style>

74
pages/life/learnMore/index.vue

@ -1,30 +1,70 @@
<template>
<swiper class="swiper-box" autoplay="true" indicator-dots='true' indicator-color='#B17815' indicator-active-color='#FFB93E' >
<swiper-item>
<image src="https://download.cyjyyjy.com/learnMore1.png"></image>
</swiper-item>
<swiper-item>
<image src="https://download.cyjyyjy.com/learnMore2.png"></image>
</swiper-item>
<swiper-item>
<image src="https://download.cyjyyjy.com/learnMore3.png"></image>
</swiper-item>
<swiper-item>
<image src="https://download.cyjyyjy.com/learnMore4.png"></image>
</swiper-item>
</swiper>
<view class="more-page">
<view class="page-title acea-row row-middle row-center" :style="'top:' + menuTop + 'px;height:' + menuHeight + 'px;line-height: ' + menuHeight + 'px;'"><image src="../../../static/images/back.png" mode="" @tap="toBackHome"></image>详情</view>
<swiper class="swiper-box" autoplay="true" indicator-dots='true' indicator-color='#B17815'
indicator-active-color='#FFB93E'>
<swiper-item>
<image src="https://download.cyjyyjy.com/learnMore1.png"></image>
</swiper-item>
<swiper-item>
<image src="https://download.cyjyyjy.com/learnMore2.png"></image>
</swiper-item>
<swiper-item>
<image src="https://download.cyjyyjy.com/learnMore3.png"></image>
</swiper-item>
<swiper-item>
<image src="https://download.cyjyyjy.com/learnMore4.png"></image>
</swiper-item>
</swiper>
</view>
</template>
<script>
const app = getApp();
export default {
data() {
return {
menuHeight: app.globalData.menuHeight,
menuTop: app.globalData.menuTop,
};
},
methods:{
toBackHome(e){
console.log("1")
uni.navigateBack();
}
}
}
</script>
<style>
.swiper-box{
<style lang="less">
.more-page{
width: 100%;
height: 100%;
position: relative;
}
.page-title{
width: 100%;
color: #fff;
position: relative;
z-index: 999;
image{
width: 30rpx;
height: 35rpx;
position: absolute;
left: 40rpx;
}
}
.swiper-box {
width: 100%;
height: 100vh;
background-color: #070604;
position: absolute;
top: 0;
}
.swiper-box image{
.swiper-box image {
width: 100%;
height: 100vh;
}

32
pages/shop/GoodSearch/index.vue

@ -3,11 +3,12 @@
<view class="searchGood">
<view class="search acea-row row-between-wrapper">
<view class="input acea-row row-between-wrapper">
<text class="iconfont icon-sousuo2"></text>
<!-- <text class="iconfont icon-sousuo2"></text> -->
<!-- <form @submit.prevent="submit"></form> -->
<input type="text" placeholder="点击搜索商品" v-model="search" />
<input type="text" placeholder="大家都在搜APP开发" v-model="search" />
<view class="bnt" @click="submit">搜索</view>
</view>
<view class="bnt" @click="submit">搜索</view>
</view>
<view v-if="keywords.length">
<view class="title">热门搜索</view>
@ -72,8 +73,29 @@ export default {
}
};
</script>
<style >
<style lang="less">
.searchGood{
.search{
padding: 0 40rpx;
.input{
width: 670rpx;
height: 68rpx;
border: 2rpx solid #FF5100;
border-radius: 8rpx;
background: rgba(255, 255, 255, 0.39);
padding: 0 0 0 20rpx;
.bnt{
width: 132rpx;
height: 68rpx;
background: linear-gradient(39deg, #FF5100 0%, #FFA074 100%);
border-radius: 8rpx;
position: absolute;
right: 40rpx;
color: #fff;
}
}
}
}
.noCommodity {
border-top: 0.05*100rpx solid #f5f5f5;
}

BIN
static/images/life-icon1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
static/images/life-icon2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

BIN
static/images/life-icon3.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

BIN
static/images/life-icon4.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Loading…
Cancel
Save