From 9385713c95cd1cb92d0ba8c89318a6822aab6cb5 Mon Sep 17 00:00:00 2001 From: litian <C21AF165> Date: 星期一, 20 一月 2025 18:24:14 +0800 Subject: [PATCH] home --- pages/home/home.wxml | 343 ++++++++++----------------------------------------------- pages/home/home.wxss | 4 2 files changed, 65 insertions(+), 282 deletions(-) diff --git a/pages/home/home.wxml b/pages/home/home.wxml index ca0bba8..4cd69cf 100644 --- a/pages/home/home.wxml +++ b/pages/home/home.wxml @@ -1,66 +1,22 @@ <view class="container"> - <t-pull-down-refresh - value="{{baseRefresh.value}}" - loadingTexts="{{['涓嬫媺鍒锋柊', '鏉炬墜鍒锋柊', '姝e湪鍒锋柊', '鍒锋柊瀹屾垚']}}" - bind:refresh="onPullDownRefresh" - wx:if="{{!loading}}" - bind:scroll="onScroll" - > - <view - class="background {{ isWhite ? 'white':''}}" - style="padding-top: {{barHeight}}px" - > + <t-pull-down-refresh value="{{baseRefresh.value}}" loadingTexts="{{['涓嬫媺鍒锋柊', '鏉炬墜鍒锋柊', '姝e湪鍒锋柊', '鍒锋柊瀹屾垚']}}" bind:refresh="onPullDownRefresh" wx:if="{{!loading}}" bind:scroll="onScroll"> + <view class="background {{ isWhite ? 'white':''}}" style="padding-top: {{barHeight}}px"> <text class="text">浜笀鏅烘暀</text> </view> <view class="home-page-header"> <view class="bg"> - <image - src="/static/images/home/home-bg.png" - mode="heightFix" - class="image" - /> + <image src="/static/images/home/home-bg.png" mode="heightFix" class="image" /> </view> <view class="search"> - <image - class="icon" - src="/static/images/home/nav_icon_scan.png" - bindtap="onIconScanTap" - /> - <t-search - t-class-input="t-search__input" - t-class-input-container="t-search__input-container" - placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��/椤圭洰璐熻矗浜�" - leftIcon="" - bind:submit="onRetrievalPage" - model:value="{{searchVal}}" - > - <t-icon - slot="left-icon" - prefix="wr" - name="search" - size="40rpx" - color="#bbb" - bind:tap="onRetrievalPage" - /> + <image class="icon" src="/static/images/home/nav_icon_scan.png" bindtap="onIconScanTap" /> + <t-search t-class-input="t-search__input" t-class-input-container="t-search__input-container" placeholder="璇疯緭鍏ュ叧閿瘝/涔﹀悕/ISBN/浣滆��/椤圭洰璐熻矗浜�" leftIcon="" bind:submit="onRetrievalPage" model:value="{{searchVal}}"> + <t-icon slot="left-icon" prefix="wr" name="search" size="40rpx" color="#bbb" bind:tap="onRetrievalPage" /> </t-search> </view> <view class="swiper-wrap"> <!-- <t-swiper wx:if="{{bannerList.length > 0}}" list="{{bannerList}}" autoplay="{{autoplay}}" duration="{{duration}}" interval="{{interval}}" navigation="{{ { type: 'dots' } }}" height="380rpx" bind:click="navToActivityDetail" /> --> - <swiper - interval="5000" - indicator-dots="true" - autoplay="true" - circular="true" - class="swiper" - > - <swiper-item - wx:for="{{bannerList}}" - wx:for-index="index" - wx:key="index" - data-info="{{item}}" - bindtap="navToActivityDetail" - class="swiper-item" - > + <swiper interval="5000" indicator-dots="true" autoplay="true" circular="true" class="swiper"> + <swiper-item wx:for="{{bannerList}}" wx:for-index="index" wx:key="index" data-info="{{item}}" bindtap="navToActivityDetail" class="swiper-item"> <view class="swiperItem"> <image src="{{item.value}}" mode="widthFix" class="img" /> </view> @@ -69,90 +25,49 @@ </view> </view> <view class="home-page-menu"> - <t-grid - class="t-grid-block" - theme="card" - border="{{border}}" - column="{{5}}" - > - <t-grid-item - wx:for="{{tabList}}" - wx:for-index="index" - wx:key="index" - text="{{item.text}}" - image="{{item.icon}}" - data-info="{{item}}" - bindtap="toPages" - /> + <t-grid class="t-grid-block" theme="card" border="{{border}}" column="{{5}}"> + <t-grid-item wx:for="{{tabList}}" wx:for-index="index" wx:key="index" text="{{item.text}}" image="{{item.icon}}" data-info="{{item}}" bindtap="toPages" /> </t-grid> </view> <view class="home-page-container"> <view class="home-page-list"> <view class="tabCardPublic iconOne"> <view class="icon"> - <image - src="/static/images/home/zhuantitaolun2.png" - mode="aspectFit" - class="iconImage" - /> + <image src="/static/images/home/zhuantitaolun2.png" mode="aspectFit" class="iconImage" /> </view> - <view - data-info="{{'zhuantitaolun'}}" - bindtap="onMoreGuide" - class="flex" - style="align-items: center" - > + <view data-info="{{'zhuantitaolun'}}" bindtap="onMoreGuide" class="flex" style="align-items: center"> <text class="more">鏇村</text> <t-icon name="chevron-right" size="32rpx" color="#ff6d00" /> </view> </view> <view class="listBox"> - <view - wx:for="{{specialSubjectList}}" - wx:for-item="item" - wx:for-index="index" - wx:key="index" - class="listItemBox" - > - <view - class="listItem" - bindtap="goSubjectDetail" - data-book="{{item}}" - > - <view class="specialSubject-img"> - <image src="{{item.icon}}" mode="aspectFill" class="img" /> - </view> - <view class="body-info"> - <view class="name">{{item.name}}</view> - <view class="time" wx:if="{{item.liveTime}}" - >鐩存挱鏃堕棿锛歿{item.liveTime}}</view - > - <view class="time" wx:if="{{item.startTime}}" - >寮�鎾椂闂达細{{ item.startTime }}</view - > - <view class="time" wx:if="{{!item.liveTime && !item.startTime}}" - >寮�鎾椂闂达細<text class="grey">寰呭畾</text></view - > - <view class="flex jc-sb"> - <text class="author" - >{{item.lecturer}} {{item.position}}</text - > - <text class="price" wx:if="{{item.price == 0}}">鍏嶈垂</text> - <text class="price" wx:if="{{item.price !== 0}}" - >锟{item.price}}</text - > + <view wx:if="{{specialSubjectList.length > 0}}"> + <view wx:for="{{specialSubjectList}}" wx:for-item="item" wx:for-index="index" wx:key="index" class="listItemBox"> + <view class="listItem" bindtap="goSubjectDetail" data-book="{{item}}"> + <view class="specialSubject-img"> + <image src="{{item.icon}}" mode="aspectFill" class="img" /> + </view> + <view class="body-info"> + <view class="name">{{item.name}}</view> + <view class="time" wx:if="{{item.liveTime}}">鐩存挱鏃堕棿锛歿{item.liveTime}}</view> + <view class="time" wx:if="{{item.startTime}}">寮�鎾椂闂达細{{ item.startTime }}</view> + <view class="time" wx:if="{{!item.liveTime && !item.startTime}}">寮�鎾椂闂达細<text class="grey">寰呭畾</text></view> + <view class="flex jc-sb"> + <text class="author">{{item.lecturer}} {{item.position}}</text> + <text class="price" wx:if="{{item.price == 0}}">鍏嶈垂</text> + <text class="price" wx:if="{{item.price !== 0}}">锟{item.price}}</text> + </view> </view> </view> </view> </view> + <view class="empyt" wx:else> + <empty /> + </view> </view> <view class="tabCardPublic iconTwo"> <view class="icon"> - <image - src="/static/images/home/tushufuwu2.png" - mode="aspectFit" - class="iconImage" - /> + <image src="/static/images/home/tushufuwu2.png" mode="aspectFit" class="iconImage" /> </view> <view data-info="{{'tushufuwu'}}" bindtap="onMoreGuide" class="flex"> <text class="more">鏇村</text> @@ -160,39 +75,16 @@ </view> </view> <view class="home-page-tabs"> - <t-tabs - t-class="t-tabs" - split="{{false}}" - position="{{'home'}}" - defaultValue="{{activeItem1}}" - bind:change="tabBookClick" - > - <t-tab-panel - wx:for="{{bookTypeList}}" - wx:for-index="index" - wx:key="index" - label="{{item.name}}" - value="{{index}}" - /> + <t-tabs t-class="t-tabs" split="{{false}}" position="{{'home'}}" defaultValue="{{activeItem1}}" bind:change="tabBookClick"> + <t-tab-panel wx:for="{{bookTypeList}}" wx:for-index="index" wx:key="index" label="{{item.name}}" value="{{index}}" /> </t-tabs> </view> <view class="listBox2"> <view wx:if="{{booksList.length > 0}}" class="flex"> - <view - wx:for="{{booksList}}" - wx:for-item="item" - wx:for-index="index" - wx:key="index" - class="booksListItemBox" - > + <view wx:for="{{booksList}}" wx:for-item="item" wx:for-index="index" wx:key="index" class="booksListItemBox"> <view class="listItem" bind:tap="goDetail" data-book="{{item}}"> <view class="specialSubject-img"> - <image - src="{{item.icon ? item.icon : '/static/images/default-book-img.png'}}" - mode="aspectFit" - class="img" - aria-label="{{item.name}}" - /> + <image src="{{item.icon ? item.icon : '/static/images/default-book-img.png'}}" mode="aspectFit" class="img" aria-label="{{item.name}}" /> </view> <view class="body-info"> <view class="name">{{item.name}}</view> @@ -208,78 +100,35 @@ </view> <view class="tabCardPublic iconTwo"> <view class="icon"> - <image - src="/static/images/home/jingxuankecheng2.png" - mode="aspectFit" - class="iconImage" - /> + <image src="/static/images/home/jingxuankecheng2.png" mode="aspectFit" class="iconImage" /> </view> - <view - data-info="{{'jingxuankecheng'}}" - bindtap="onMoreGuide" - class="flex" - > + <view data-info="{{'jingxuankecheng'}}" bindtap="onMoreGuide" class="flex"> <text class="more">鏇村</text> <t-icon name="chevron-right" size="32rpx" color="#ff6d00" /> </view> </view> <view class="home-page-tabs"> - <t-tabs - t-class="t-tabs" - split="{{false}}" - defaultValue="{{activeItem}}" - bind:change="tabChangeHandle" - > - <t-tab-panel - wx:for="{{courseTypeList}}" - wx:for-index="index" - wx:key="index" - label="{{item.name}}" - value="{{index}}" - /> + <t-tabs t-class="t-tabs" split="{{false}}" defaultValue="{{activeItem}}" bind:change="tabChangeHandle"> + <t-tab-panel wx:for="{{courseTypeList}}" wx:for-index="index" wx:key="index" label="{{item.name}}" value="{{index}}" /> </t-tabs> </view> <view class="listBox1"> <view wx:if="{{courseList.length>0}}"> - <view - wx:for="{{courseList}}" - wx:for-item="item" - wx:for-index="index" - wx:key="index" - class="listItemBox" - > + <view wx:for="{{courseList}}" wx:for-item="item" wx:for-index="index" wx:key="index" class="listItemBox"> <view class="listItem flex"> - <view - class="specialSubject-img" - data-book="{{item}}" - bindtap="goCourseDetail" - > + <view class="specialSubject-img" data-book="{{item}}" bindtap="goCourseDetail"> <image src="{{item.icon}}" mode="aspectFit" class="img" /> </view> <view class="body-info"> - <view - class="name" - data-book="{{item}}" - bindtap="goCourseDetail" - >{{item.name}}</view - > + <view class="name" data-book="{{item}}" bindtap="goCourseDetail">{{item.name}}</view> <view class="flex jc-sb"> <text class="author">{{item.courseLeader}}</text> <text class="classHours">{{item.classHours}}璇炬椂</text> </view> <view class="priceBox flex jc-sb"> <text class="price" wx:if="{{item.price == 0}}">鍏嶈垂</text> - <text class="price" wx:if="{{item.price !== 0}}" - >锟{item.price}}</text - > - <image - wx:if="{{item.price}}" - src="/static/images/home/home-cart.png" - mode="aspectFit" - class="addCartImg" - bind:tap="addCart" - data-info="{{item}}" - /> + <text class="price" wx:if="{{item.price !== 0}}">锟{item.price}}</text> + <image wx:if="{{item.price}}" src="/static/images/home/home-cart.png" mode="aspectFit" class="addCartImg" bind:tap="addCart" data-info="{{item}}" /> </view> </view> </view> @@ -293,11 +142,7 @@ <view class="tabCardPublic iconTwo"> <view class="icon"> - <image - src="/static/images/home/shuziyuedu2.png" - mode="aspectFit" - class="iconImage" - /> + <image src="/static/images/home/shuziyuedu2.png" mode="aspectFit" class="iconImage" /> </view> <view data-info="{{'shuziyuedu'}}" bindtap="onMoreGuide" class="flex"> <text class="more">鏇村</text> @@ -305,18 +150,8 @@ </view> </view> <view class="listBox2 flex"> - <view - wx:for="{{readBookList}}" - wx:for-item="item" - wx:for-index="index" - wx:key="index" - class="booksListItemBox" - > - <view - class="listItem" - bind:tap="goReadBookDetail" - data-book="{{item}}" - > + <view wx:for="{{readBookList}}" wx:for-item="item" wx:for-index="index" wx:key="index" class="booksListItemBox"> + <view class="listItem" bind:tap="goReadBookDetail" data-book="{{item}}"> <view class="specialSubject-img"> <image src="{{item.icon}}" mode="aspectFit" class="img" /> </view> @@ -329,64 +164,28 @@ </view> <view class="tabCardPublic iconTwo"> <view class="icon"> - <image - src="/static/images/home/shuzijiaocai2.png" - mode="aspectFit" - class="iconImage" - /> + <image src="/static/images/home/shuzijiaocai2.png" mode="aspectFit" class="iconImage" /> </view> - <view - data-info="{{'shuzijiaocai'}}" - bindtap="onMoreGuide" - class="flex" - > + <view data-info="{{'shuzijiaocai'}}" bindtap="onMoreGuide" class="flex"> <text class="more">鏇村</text> <t-icon name="chevron-right" size="32rpx" color="#ff6d00" /> </view> </view> <view class="listBox3"> <view wx:if="{{textbookList.length > 0}}"> - <view - wx:for="{{textbookList}}" - wx:for-item="item" - wx:for-index="index" - wx:key="index" - class="textbooksItemBox" - > + <view wx:for="{{textbookList}}" wx:for-item="item" wx:for-index="index" wx:key="index" class="textbooksItemBox"> <view class="listItem flex"> - <view - class="specialSubject-img" - bind:tap="goTextBookDetail" - data-book="{{item}}" - > + <view class="specialSubject-img" bind:tap="goTextBookDetail" data-book="{{item}}"> <image src="{{item.icon}}" mode="aspectFit" class="img" /> </view> <view class="body-info"> - <view - class="name" - bind:tap="goTextBookDetail" - data-book="{{item}}" - >{{item.name}}</view - > - <view - class="introduction" - bind:tap="goTextBookDetail" - data-book="{{item}}" - >{{item.description}}</view - > + <view class="name" bind:tap="goTextBookDetail" data-book="{{item}}">{{item.name}}</view> + <view class="introduction" bind:tap="goTextBookDetail" data-book="{{item}}">{{item.description}}</view> <view class="author">{{item.author}}</view> <view class="priceBox flex jc-sb"> <text class="price" wx:if="{{item.price == 0}}">鍏嶈垂</text> - <text class="price" wx:if="{{item.price !== 0}}" - >锟{item.price}}</text - > - <image - src="/static/images/home/home-cart.png" - mode="aspectFit" - class="addCartImg" - bind:tap="addCart" - data-info="{{item}}" - /> + <text class="price" wx:if="{{item.price !== 0}}">锟{item.price}}</text> + <image src="/static/images/home/home-cart.png" mode="aspectFit" class="addCartImg" bind:tap="addCart" data-info="{{item}}" /> </view> </view> </view> @@ -399,37 +198,17 @@ </view> <view class="tabCardPublic"> <view class="icon"> - <image - src="/static/images/home/paihangbang2.png" - mode="" - class="iconImage" - /> + <image src="/static/images/home/paihangbang2.png" mode="" class="iconImage" /> </view> </view> <view class="rankingList"> <scroll-view class="srcolbox" scroll-x scroll-with-animation="true"> <view class="booksListBox"> - <view - wx:for="{{rankingList}}" - wx:for-item="item" - wx:for-index="index" - wx:key="index" - class="booksListItemBox" - > + <view wx:for="{{rankingList}}" wx:for-item="item" wx:for-index="index" wx:key="index" class="booksListItemBox"> <view class="listItem" bind:tap="goDetail" data-book="{{item}}"> <view class="specialSubject-img"> - <image - src="{{item.icon}}" - mode="aspectFit" - class="img" - wx:if="{{item.icon}}" - /> - <image - src="/static/images/default-book-img.png" - mode="aspectFit" - class="img" - wx:else - /> + <image src="{{item.icon}}" mode="aspectFit" class="img" wx:if="{{item.icon}}" /> + <image src="/static/images/default-book-img.png" mode="aspectFit" class="img" wx:else /> </view> <view class="body-info"> <view class="name">{{item.name}}</view> @@ -445,4 +224,4 @@ </t-pull-down-refresh> </view> <import src="home.skeleton.wxml" /> -<template is="skeleton" wx:if="{{loading}}" /> +<template is="skeleton" wx:if="{{loading}}" /> \ No newline at end of file diff --git a/pages/home/home.wxss b/pages/home/home.wxss index 675b791..eb6a375 100644 --- a/pages/home/home.wxss +++ b/pages/home/home.wxss @@ -377,6 +377,10 @@ font-size: 26rpx; } +.listBox .empyt { + margin: 0 auto; +} + .listBox2 .empyt { padding: 20rpx; box-sizing: border-box; -- Gitblit v1.9.1