Commit c3f6b8e2 authored by jyx's avatar jyx

代码优化

parent 9b2683d5
......@@ -192,10 +192,10 @@
width: 80rpx;
height: 80rpx;
display: flex;
justify-content: center;
justify-content: center;
align-items: center;
border-radius: 80rpx;
background-color: aqua;
box-shadow: 0 0 2px 0px rgba(0, 0, 0, 0.1);
background-color: whitesmoke;
box-shadow: 0 0 2px 0px rgba(255, 255, 255, 0.1);
}
</style>
\ No newline at end of file
......@@ -88,7 +88,7 @@
</view>
</view>
<view style="font-size: 26rpx;margin-top: 10rpx;height: 62rpx;">{{item.title}}</view>
<view style="font-size: 26rpx;margin-top: 10rpx;height: 62rpx;">{{item.title}}</view>
<view class="ellipsis" style="font-size: 22rpx;margin-top: 10rpx;"
v-if="item.orderTags!=null&&item.orderTags.length>0">
<scroll-view scroll-x="true">
......@@ -225,9 +225,8 @@
</view>
</view>
<view class="box-wrap" v-if="showBox">
<view class="box-wrap">
<image class="img1" @click="handleTaskPage" :src="boxImgUrl"></image>
<image class="img2" @click="clearBox" src="@/static/video/close.png"></image>
</view>
<!-- <uni-popup type="center" ref="select">
......@@ -284,7 +283,6 @@
typeIndex: 0,
typeId: -1,
newRecordBean: null,
showBox: false,
showMask: false,
maskImage1: 'https://mints-web.oss-cn-beijing.aliyuncs.com/images/bg_find1.png',
maskImage2: 'https://mints-web.oss-cn-beijing.aliyuncs.com/images/bg_find2.png',
......@@ -346,19 +344,6 @@
}
}
});
// 是否展示
this.post({
url: '/vTask/sign/homePageShowSign',
data: {},
showLoading: false,
success: ({
data
}) => {
if (data.show) {
this.showBox = data.show
}
}
});
// 分类列表
this.post({
......@@ -392,15 +377,17 @@
showLoading: false,
success: ({
data
}) => {
}) => {
// this.$refs.paging.complete(data.list);
this.$refs.paging.complete(data.list);
}
});
},
popHandleChange(e) {
this.typeId = e.typeId
if (this.$refs.paging != null) {
this.$refs.paging.refresh();
if (this.$refs.paging != null) {
this.$refs.paging.reload();
}
},
handleBanner(item) {
......@@ -542,11 +529,5 @@
width: 100rpx;
height: 100rpx;
}
.img2 {
width: 20rpx;
height: 20rpx;
margin-bottom: 80rpx;
}
}
</style>
\ No newline at end of file
<template>
<view class="body">
<swiper class="swiper" circular @change="swiperChange" :current="current" :vertical="true" duration="300">
<swiper-item v-for="(list, index) in displaySwiperList" :key="index">
<view v-if="Math.abs(displayIndex-index)==0" style="height: 100%;"
@click="tapVideoHover()">
<!-- <video v-if="Math.abs(displayIndex-index)==0" :id="''+list.vedioId" :controls="controls"
:autoplay="true" :isplay="true" play-btn-position="center" :loop="!isplay" @ended="ended"
@controlstoggle="controlstoggle" :show-fullscreen-btn="false" :poster="list.coverImage"
:show-loading="true" @click="tapVideoHover()" :enable-progress-gesture="false" class="tsvideo"
:src="list.recommendUrl" object-fit="cover" /> -->
<view v-if="Math.abs(displayIndex-index)==0" style="height: 100%;" @click="tapVideoHover()">
<tt-video-player v-if="Math.abs(displayIndex-index)==0" :id="list.vedioId" class="tsvideo"
:album-id="list.douyinAlbumId" :cover-id="list.douyinCoverId" :episode-id="list.douyinEpisodeId"
:cloud-type="1" version="1" object-fit="cover" :controls="controls" :poster="data.coverImage"
:loop="!isplay" :autoplay="true" :enable-progress-gesture="false" :show-loading="true"
@play="startPlay" :show-fullscreen-btn="false" @controlstoggle="controlstoggle"
@timeupdate="timeUpdate" @ended="ended">
<view>{{index + '-------' + displayIndex}}</view>
</tt-video-player>
</view>
<view v-if="!isqp" class="userInfo flex">
......@@ -29,7 +19,7 @@
<image @click.stop="cancelCollect(list.vedioId,index)" v-if="list.collect==1"
src="@/static/home_collect_img_1.png" />
<text
style="margin-top: 110rpx;color: #FFFFFF;font-size: 26rpx; text-align: center;font-weight: bold;"
style="margin: 0 auto;margin-top: 120rpx;color: #FFFFFF;font-size: 26rpx;font-weight: bold;"
:class="{'likeNumActive':list.collect!=0}">{{list.hot}}</text>
</view>
<!-- 分享 -->
......@@ -61,9 +51,9 @@
</template>
<script>
import common from '@/mixins/common';
import ttVideoPlayer from '@/ttcomponents/tt-video-player/index.js'
import common from '@/mixins/common';
import ttVideoPlayer from '@/ttcomponents/tt-video-player/index.js'
import {
navigateTo,
......@@ -73,9 +63,9 @@
export default {
name: "recommendVideo",
mixins: [common],
components:{
ttVideoPlayer
mixins: [common],
components: {
ttVideoPlayer
},
data() {
return {
......@@ -173,6 +163,7 @@
this.isqp = true
this.controls = true
},
timeUpdate() {},
ended() {
// 1.播放当前视频结束时触发,自动切换下一个视频
if (this.isplay) {
......
<template>
<uni-popup type="center" ref="spopup" :maskClick="false" :isMaskClick="false">
<view class="dialog">
<image @click="onClose" style="width: 50rpx; height: 50rpx;margin-left:auto;margin-right: 30rpx;"
src="@/static/video/close.png"></image>
<view class="dialog-container">
<image @click="onClose" style="width: 40px; height: 40px; margin-top: 30px;margin-left:auto;"
src="@/static/video/close.png"></image>
<text style="margin-top: 20px; font-size: 46px; color: #ffffff">签到成功</text>
<text style="margin-top: 20px; font-size: 30px; color: #ffffff">{{
'已获得' + dot + '看点,有效期3天'
}}</text>
<view class="dialog-content">
<text style="font-size: 44rpx; color: #D77706;font-weight: 700;">
{{ '恭喜获得' + dot + '看点' }}
</text>
<text style="margin: 15rpx 0; font-size: 36rpx; color: #D77706">签到成功</text>
<text style="margin-bottom: 15rpx; font-size: 32rpx; color: ##492E0F">
{{stype==2?'分享给好友,可再领' + moreDot + '看点!':'观看广告,可再领' + moreDot + '看点!'}}
</text>
<button v-if="stype==2" open-type="share" class="button"
style="color: white;button::after{ border: none;}">立即分享</button>
<button v-else class="button" style="color: white;button::after{ border: none;}"
@click="submit">立即观看</button>
</view>
<image src="https://mints-pkg.oss-cn-beijing.aliyuncs.com/pkg/img/bg_task_sign.png"
style="height: 520rpx;" mode="heightFix"></image>
</view>
</view>
</uni-popup>
</template>
<script>
export default {
name: 'signPopup',
export default {
name: 'signPopup',
props: {
show: {
type: Boolean,
......@@ -24,12 +36,20 @@
dot: {
type: [Number, String],
default: 0
},
moreDot: {
type: [Number, String],
default: 0
},
stype: {
type: [Number, String],
default: 0
}
},
data() {
return {
taskOkImg: 'https://mints-web.oss-cn-beijing.aliyuncs.com/images/ic_sign_suc.png',
};
},
data() {
return {
bgImg: 'https://mints-pkg.oss-cn-beijing.aliyuncs.com/pkg/img/bg_task_sign.png',
};
},
watch: {
show: {
......@@ -52,6 +72,10 @@
onClose() {
this.$refs.spopup.close();
this.$emit('signClose');
},
submit() {
this.$refs.spopup.close();
this.$emit('submit');
}
}
}
......@@ -60,19 +84,23 @@
<style lang="less">
.dialog {
height: 100%;
width: 100%;
display: flex;
align-items: flex-start;
flex-direction: column;
padding-bottom: 260rpx;
}
.dialog-container {
position: relative;
}
.dialog-content {
position: absolute;
top: 40%;
left: 50%;
width: 500rpx;
margin-left: -250rpx;
display: flex;
flex-direction: column;
width: 100%;
margin: 0 30px;
height: 320px;
padding: 0 30px;
background-color: #fb3309;
border-radius: 30px;
align-items: center;
}
</style>
\ No newline at end of file
......@@ -10,7 +10,9 @@
</view>
<text class="searchbutton" @click="getsearch">搜索</text>
</view>
<view>
<scroll-view scroll-y style="height: 92%;">
<view class="search-item-wrap" v-if="searchList.length>0 && !showEmpty">
<view class="search-item-top">
<text class="item-title">历史搜索</text>
......@@ -25,42 +27,37 @@
</block>
</view>
</view>
</view>
<view>
<view class="emptyView" v-if="showEmpty">
<text style="font-size: 30rpx;"> 暂无搜索结果 </text>
</view>
</view>
<z-paging class="flex-1">
<view v-if="topList.length>0 && dataList.length==0" class="flex1">
<view class="item-list-column" v-if="topList.length>0 && dataList.length==0">
<text class="item-title">{{showEmpty ? '猜你喜欢' : '今日热门' }}</text>
<view class="flex space" style="display:flex; flex-wrap:wrap;">
<view class="flex space" style="display:flex;flex-wrap:wrap;">
<block v-for="(value,key) in topList" :key="key">
<view class="mt-10"
style="width:31%; position: relative; border-radius:20rpx;margin-bottom: 10rpx;margin-left: 14rpx;"
style="width:31%; position: relative; border-radius:20rpx;margin-left: 9rpx;"
@click="handleListItem(value)">
<image class="integral-mall-goods" mode="aspectFill" :src="value.coverImage"></image>
<view class="text" style="font-size: 26rpx;color: black;height: 36rpx;margin-left: 5rpx;">
<view class="text" style="font-size: 26rpx;color: black;height: 66rpx;margin-left: 5rpx;">
{{value.title}}
</view>
</view>
</block>
</view>
</view>
<view class="item-content">
<view class="item-list-column">
<block v-for="(item, index) in dataList" :key="index">
<view class="pack-item" @click="handleListItem(item)">
<image class="images" mode="aspectFill" :src="item.coverImage" />
<view class="pack-item-cloumn">
<text class="text">
{{ item.title }}
</text>
<text class="text3"> {{
<view class="item-list-column">
<block v-for="(item, index) in dataList" :key="index">
<view class="pack-item" @click="handleListItem(item)">
<image class="images" mode="aspectFill" :src="item.coverImage" />
<view class="pack-item-cloumn">
<text class="text">
{{ item.title }}
</text>
<text class="text3"> {{
item.vedioDesc == ''
? '已看' +
item.seeIndex +
......@@ -69,16 +66,15 @@
'集'
: item.vedioDesc
}}
</text>
<text class="text4">
{{ item.orderTagsStr }}
</text>
</view>
</text>
<!-- <text class="text4">
{{ item.orderTagsStr }}
</text> -->
</view>
</block>
</view>
</view>
</block>
</view>
</z-paging>
</scroll-view>
</view>
</template>
......@@ -101,11 +97,11 @@
searchList: [],
keyword: '',
showEmpty: false,
sHeight: '',
searchKey: 'SEARCH_HISTORY_WORDS'
}
},
mounted() {
this.getHistorySearchWords()
this.getOrders()
},
......@@ -114,7 +110,7 @@
let that = this
this.post({
url: '/vedio/orders',
url: '/vedio/search',
data: {
words: that.keyword
},
......@@ -243,7 +239,7 @@
<style lang="less">
.container {
background-color: white;
flex: 1;
height: 100%;
}
.item-list {
......@@ -352,36 +348,6 @@
justify-content: space-between;
}
.item-list-bottom {
background-color: #808080;
width: 100%;
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 280rpx;
height: 40rpx;
border-radius: 10rpx;
opacity: 0.7;
}
.item-list-bottom-img {
object-fit: fill;
height: 30rpx;
width: 30rpx;
margin-left: 4rpx;
margin-top: 4rpx;
}
.product-item-column {
width: 26%;
height: 390rpx;
display: block;
// display: flex;
// flex-direction: column;
// margin-bottom: 10rpx;
// margin-right: 10rpx;
}
.item-list-img3 {
position: absolute;
width: 100%;
......
......@@ -15,11 +15,13 @@
<image :src="item.compleled?signOkImg:signNoneImg"></image>
<text class="text1">{{ '+' + item.reward }}</text>
</view>
<text :style="item.text == '今天'?'color:#ffa500;':''">{{ item.text }}</text>
<text :style="item.text == '今天'?'color:#f84a57;':''">{{ item.text }}</text>
</view>
</block>
</view>
<text :class="signBtnStyle" @click="sign">{{signData.buttonText}}</text>
<button v-if="signData.list[signData.todayMsgIndexInWeek].rewardMoreType==2" open-type="share"
:class="signBtnStyle" @click="sign">{{signData.buttonText}}</button>
<button v-else :class="signBtnStyle" @click="sign">{{signData.buttonText}}</button>
</view>
</view>
......@@ -69,8 +71,14 @@
</block>
</view>
<reward-popup :show="showRewardPopup" :dot="currentDot" @rewardClose="rewardClose"></reward-popup>
<signsuc-popup :show="showSignPopup" :dot="currentDot" @signClose="signClose"></signsuc-popup>
<reward-popup :show="showRewardPopup" :dot="signData.list[signData.todayMsgIndexInWeek].reward"
@rewardClose="rewardClose"></reward-popup>
<signsuc-popup :show="showSignPopup" :moreDot="signData.list[signData.todayMsgIndexInWeek].rewardMore"
:stype="signData.list[signData.todayMsgIndexInWeek].rewardMoreType"
:dot="signData.list[signData.todayMsgIndexInWeek].reward" @submit="sign"
@signClose="signClose"></signsuc-popup>
</z-paging>
</template>
......@@ -114,7 +122,12 @@
signOkImg: 'https://mints-web.oss-cn-beijing.aliyuncs.com/images/ic_sign_receive.png',
signNoneImg: 'https://mints-web.oss-cn-beijing.aliyuncs.com/images/ic_sign_unreceive.png',
taskCoinImg: 'https://mints-web.oss-cn-beijing.aliyuncs.com/images/ic_sign_unreceive_little.png',
signRule: '1、每7天为一个签到周期,用户连续签满7天,完成一个签到周期,下次签到开始重新计算新的签到周期。\r\n2、用户每次签到均可获得相应的奖励连续签到7天可获得更高奖励。\r\n3、若途中漏签,则从第一天开始重新计算新的签到周期。\r\n4、签到及任务赠送看点的有效期均为5天,过期自动作废,请及时使用。'
signRule: '1、每7天为一个签到周期,用户连续签满7天,完成一个签到周期,下次签到开始重新计算新的签到周期。\r\n2、用户每次签到均可获得相应的奖励连续签到7天可获得更高奖励。\r\n3、若途中漏签,则从第一天开始重新计算新的签到周期。\r\n4、签到及任务赠送看点的有效期均为5天,过期自动作废,请及时使用。',
share: {
title: '更多好剧,等你来看',
imageUrl: 'https://mints-pkg.oss-cn-beijing.aliyuncs.com/pkg/img/ic_movie.png',
path: '/pages/loading?shareId='
}
}
},
mounted() {
......@@ -123,6 +136,27 @@
this.preloadAd()
},
methods: {
async onShareAppMessage(option) {
const title = '寻觅短剧';
let that = this
return {
title, // 这是要转发的小程序标题
desc: this.share.title,
path: this.share.path + getApp().globalData.userId,
imageUrl: this.share.imageUrl,
templateId: "920405b4ghj2fla2gc",
success() {
message.notify('分享成功');
if (that.signData.list[signData.todayMsgIndexInWeek].rewardMoreType) {
that.reportTaskPointMore(that.signData.list[signData.todayMsgIndexInWeek], true)
}
},
fail() {
message.notify('分享失败');
},
};
},
preloadAd() {
this.ad = tt.createRewardedVideoAd({
adUnitId: REWARD_ID,
......@@ -131,9 +165,8 @@
// 监听错误
this.ad.onError((err) => {
tt.hideLoading();
uni.showToast({
title: '广告拉取失败,请稍候再试'
})
message.notify('广告拉取失败,请稍候再试');
switch (err.errCode) {
case 1004:
// 无合适的广告
......@@ -152,10 +185,10 @@
// 监听视频播放完成
this.ad.onClose((data) => {
tt.hideLoading();
if (data.isEnded) {
if (data.isEnded) {
that.reportTaskPointMore(item, true)
} else {
console.log("未观看完视频");
message.notify('未观看完视频');
}
});
},
......@@ -190,17 +223,17 @@
}) => {
that.taskList = data.pageMsg
for (var i = 0; i < that.taskList.length; i++) {
for (var j = 0; j < that.taskList[i].taskList.length; j++) {
if (that.taskList[i].taskList[j].listCode == TaskConstant.openForHome &&
that.taskList[i].taskList[j].status == 0
) {
that.isFromForHome()
return
}
}
}
this.$refs.paging.complete(data.list);
// for (var i = 0; i < that.taskList.length; i++) {
// for (var j = 0; j < that.taskList[i].taskList.length; j++) {
// if (that.taskList[i].taskList[j].listCode == TaskConstant.openForHome &&
// that.taskList[i].taskList[j].status == 0
// ) {
// that.isFromForHome()
// return
// }
// }
// }
// this.$refs.paging.complete(data.pageMsg);
}
});
},
......@@ -231,7 +264,6 @@
},
sign() {
let buttonStatus = this.signData.buttonStatus
if (this.signData == '' || this.signData.buttonStatus == 2) {
return
}
......@@ -290,9 +322,9 @@
success: ({
data
}) => {
message.notify('已成功领取' + item.reward + '看点');
that.currentDot = item.reward
that.getSignList()
that.showSignPopup = true
},
});
},
......@@ -323,6 +355,7 @@
})
},
doTask(item) {
console.log(item)
if (item.status == 2) {
// 已领取金币
return
......@@ -351,7 +384,6 @@
item.listCode == TaskConstant.completePay
) {
navigateTo(`/pagesA/vipPay/vipPay`)
} else if (
item.listCode == TaskConstant.saveToPhonePage
) {
......@@ -370,23 +402,14 @@
) {
// TODO 看广告
} else {}
} else {
redirectTo(`/pages/home`)
}
}
},
myShare(item) {
// TODO 分享
// let that = this
// share.share({
// type: 'text/html',
// data: '河狸刷剧',
// success: function(data) {
// that.signMoreReward(item)
// },
// fail: function(data, code) {
// console.log(`handling fail, code = ${code}`)
// }
// })
},
signMoreReward(item) {
// 签到-广告或者分享后领取更多
......@@ -540,6 +563,11 @@
margin-top: 30rpx;
margin-bottom: 20rpx;
background: repeating-linear-gradient(to right, #fb6c3a, #fc473a);
button::after {
border: none;
}
}
.sign-btn2 {
......@@ -553,6 +581,11 @@
margin-top: 30rpx;
margin-bottom: 20rpx;
background-color: #dcdcdc;
button::after {
border: none;
}
}
.task-btn {
......
......@@ -57,6 +57,11 @@
</view>
</view>
<view class="box-wrap">
<image class="img1" @click="handleTaskPage"
:src="'https://mints-web.oss-cn-beijing.aliyuncs.com/images/ic_bag.png'"></image>
</view>
<episodePopup ref="episodePopup" @selectVideo="selectThisVideo" :windowWidth="windowWidth"
:windowHeight="windowHeight" :tabIndex="tabIndex" :tabs="tabs" :subList="subList" :originList="originList"
:originIndex="originIndex" />
......@@ -122,7 +127,7 @@
data: {},
isPlayNext: 0,
tabIndex: 0,
tabs: [],
tabs: [],
userBean: {},
subList: [],
showTap: false,
......@@ -184,7 +189,7 @@
}
});
},
},
// 分享
// onShareAppMessage() {
// let result = {
......@@ -345,20 +350,20 @@
},
getData() {
let that = this
this.originList = []
this.post({
url: '/user/baseMsg',
showLoading: false,
success: ({
data
}) => {
this.userBean = data;
// 非会员且当天未弹出 签到弹窗
if (this.userBean.expireTime <= 0 && this.curTimeData != this.localTimeData) {
this.showSignPop = true
}
}
this.originList = []
this.post({
url: '/user/baseMsg',
showLoading: false,
success: ({
data
}) => {
this.userBean = data;
// 非会员且当天未弹出 签到弹窗
if (this.userBean.expireTime <= 0 && this.curTimeData != this.localTimeData) {
this.showSignPop = true
}
}
});
this.post({
url: '/vedio/getIndexList',
......@@ -582,6 +587,9 @@
// 预加载资源
this.ad.load();
},
handleTaskPage() {
navigateTo(`/pagesA/task/task`)
},
coinPopupClose() {
if (this.showAdForServer) {
this.showAdPop = true
......@@ -814,6 +822,26 @@
color: #ffffff;
}
.box-wrap {
height: 100rpx;
width: 120rpx;
left: 20rpx;
top: 200rpx;
position: absolute;
z-index: 999;
.img1 {
width: 100rpx;
height: 100rpx;
}
.img2 {
width: 20rpx;
height: 20rpx;
margin-bottom: 80rpx;
}
}
@keyframes fadenum12 {
0% {
opacity: 1;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment