|
@@ -1,36 +1,47 @@
|
|
|
-<template>
|
|
|
- <gracePage :customHeader="false">
|
|
|
+<template>
|
|
|
+ <gracePage :customHeader="false">
|
|
|
<view class="container" slot="gBody">
|
|
|
- <ourLoading isFullScreen :active="pageLoading" :text="pageLoadingText" />
|
|
|
- <view class="wrap2" @click="showBuy">
|
|
|
- <graceBorderRadius :style="fetch.button.bgcolor" :radius="['20rpx','20rpx','20rpx','0rpx']">
|
|
|
- <text class="demo2 grace-white" :style="fetch.button.color">{{fetch.info.name}}</text>
|
|
|
- </graceBorderRadius>
|
|
|
- </view>
|
|
|
- <swiper class="cover" @change="change" :circular="swiper.circular">
|
|
|
- <swiper-item v-for="(v, k) in fetch.info.pic_bg" :key="k">
|
|
|
- <view class="default">
|
|
|
- <image :src="v" mode="widthFix" style="height:auto;"></image>
|
|
|
- </view>
|
|
|
- </swiper-item>
|
|
|
- </swiper>
|
|
|
-
|
|
|
- <view class="btn-ctrls">
|
|
|
- <view class="btn-title" v-if="fetch.info.uid > 0" style="display: none;">
|
|
|
- <text class="grace-title-text grace-black">{{fetch.info.user.username}}创作</text>
|
|
|
+ <swiper class="banner-swiper" autoplay :interval="5000" :duration="1000" @change="change" :circular="swiper.circular">
|
|
|
+ <swiper-item class="banner-swiper-item" v-for="(v, k) in fetch.info.pic_bg" :key="k">
|
|
|
+ <image :src="v" mode="widthFix"></image>
|
|
|
+ </swiper-item>
|
|
|
+ </swiper>
|
|
|
+ <view class="content">
|
|
|
+ <!-- section-1 begin -->
|
|
|
+ <view class="section-1">
|
|
|
+ <navigator class="item">
|
|
|
+ <image :src="fetch.info.pic_cover" mode="widthFix"></image>
|
|
|
+ <view class="wenyue-font">{{fetch.info.name}}</view>
|
|
|
+ <view class="text-color-assist">{{fetch.info.desc}}</view>
|
|
|
+ </navigator>
|
|
|
+ <view class="item" v-if="fetch.info.uid > 0">
|
|
|
+ <image :src="fetch.info.user.avatar" mode="widthFix" class="avatar"></image>
|
|
|
+ <view class="wenyue-font">{{fetch.info.user.username}}</view>
|
|
|
+ <view class="text-color-assist">{{fetch.info.user.author}}</view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <!-- section-2 end -->
|
|
|
+ <!-- section-2 begin -->
|
|
|
+ <view class="section-2">
|
|
|
+ <view class="item" v-for="(v, k) in fetch.button" :key="k">
|
|
|
+ <view class="title">
|
|
|
+ <image :src="v.icon" v-if="v.icon" style="width:33px;height:33px;"></image>
|
|
|
+ <view>{{v.name}}</view>
|
|
|
+ </view>
|
|
|
+ <view class="tips" v-if="v.info">{{v.info}}</view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ <!-- section-2 end -->
|
|
|
+ <view class="section-3">
|
|
|
+ <view class="my-integral">
|
|
|
+ <view class="tips">
|
|
|
+ <rich-text :nodes="fetch.info.content"></rich-text>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+
|
|
|
</view>
|
|
|
-
|
|
|
- <view class="btn-wrapper space-between" v-if="fetch.button" :style="fetch.button.bgcolor">
|
|
|
- <view class="button primary big" :style="fetch.button.color" v-if="fetch.button.name && fetch.button.name[0]" @click="goView">{{fetch.button.name[0]}}</view>
|
|
|
- <block v-if="fetch.button.name && fetch.button.name[1]">
|
|
|
- <text class="spliter"></text>
|
|
|
- <view class="button primary big" :style="fetch.button.color" @click="goRanking">{{fetch.button.name[1]}}</view>
|
|
|
- </block>
|
|
|
- </view>
|
|
|
- <view class="dots">
|
|
|
- <text :class="swiper.index == k ? 'cur' : ''" v-for="(v, k) in fetch.info.pic_bg" :key="k"></text>
|
|
|
- </view>
|
|
|
</view>
|
|
|
+
|
|
|
<view v-if="buyState">
|
|
|
<buy :id="id" :bgcolor="fetch.button.bgcolor" :color="fetch.button.color" :code="fetch.code" :name="fetch.info.name" @hideBuy="hideBuy" @share="share" @view="view"></buy>
|
|
|
</view>
|
|
@@ -43,14 +54,14 @@
|
|
|
<info :id="id" :bgcolor="fetch.button.bgcolor" :color="fetch.button.color" @hideInfo="hideInfo"></info>
|
|
|
</view>
|
|
|
|
|
|
- <dever-share ref="share" :id="id" :code="fetch.code" :data="fetch.share" v-if="fetch.share && fetch.code"></dever-share>
|
|
|
-
|
|
|
- <view class="mask buy-layer" v-if="inviteState && fetch.share_user && fetch.share_user.code">
|
|
|
- <view class="buytip-layer layer " catchtap="handleStop">
|
|
|
- <view class="buy-tit buy-user"><image :src="fetch.share_user.avatar" mode="widthFix"></image></view>
|
|
|
+ <dever-share ref="share" :id="id" :code="fetch.code" :data="fetch.share" v-if="fetch.share && fetch.code"></dever-share>
|
|
|
+
|
|
|
+ <view class="mask buy-layer" v-if="inviteState && fetch.share_user && fetch.share_user.code">
|
|
|
+ <view class="buytip-layer layer " catchtap="handleStop">
|
|
|
+ <view class="buy-tit buy-user"><image :src="fetch.share_user.avatar" mode="widthFix"></image></view>
|
|
|
<view class="buy-tit" style="margin-top: 10rpx;">{{fetch.share_user.username}}赠送{{fetch.info.ticket_name}}</view>
|
|
|
- <view v-if="fetch.share_user.ticket && fetch.share_user.ticket.desc">
|
|
|
- <text class="p">“{{fetch.share_user.ticket.desc}}”</text>
|
|
|
+ <view v-if="fetch.share_user.ticket && fetch.share_user.ticket.desc">
|
|
|
+ <text class="p">“{{fetch.share_user.ticket.desc}}”</text>
|
|
|
<text class="p">—“他”是这么说的</text>
|
|
|
</view>
|
|
|
|
|
@@ -62,521 +73,302 @@
|
|
|
<view v-if="fetch.share_ticket">
|
|
|
<text class="p">“{{fetch.share_ticket}}”</text>
|
|
|
<text class="p">—你已拥有{{fetch.info.ticket_name}},你这么回复“他”吧</text>
|
|
|
- </view>
|
|
|
-
|
|
|
- <view class="btn-wrapper" v-if="!fetch.share_ticket">
|
|
|
- <view class="button cancel" @click="hideInvite">不要
|
|
|
- </view>
|
|
|
- <view class="button primary" :style="fetch.button.bgcolor" @click="saveTicket(fetch.share_user.code)">收下
|
|
|
- <button formType="submit"></button>
|
|
|
- </view>
|
|
|
+ </view>
|
|
|
+
|
|
|
+ <view class="btn-wrapper" v-if="!fetch.share_ticket">
|
|
|
+ <view class="button cancel" @click="hideInvite">不要
|
|
|
+ </view>
|
|
|
+ <view class="button primary" :style="fetch.button.bgcolor" @click="saveTicket(fetch.share_user.code)">收下
|
|
|
+ <button formType="submit"></button>
|
|
|
+ </view>
|
|
|
</view>
|
|
|
|
|
|
<view class="btn-wrapper" v-if="fetch.share_ticket">
|
|
|
<view class="button primary" style="margin: 0 auto;" @click="hideInvite" :style="fetch.button.bgcolor">关闭</view>
|
|
|
- </view>
|
|
|
-
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- </view>
|
|
|
- </gracePage>
|
|
|
-</template>
|
|
|
-<script>
|
|
|
-import buy from "@/pages/dream/buy.vue";
|
|
|
-import ranking from "@/pages/dream/ranking.vue";
|
|
|
-import info from "@/pages/dream/info.vue";
|
|
|
-import deverShare from '@/lib/dever/components/share.vue';
|
|
|
-export default{
|
|
|
- data() {
|
|
|
- return {
|
|
|
- id : 0,
|
|
|
- swiper : {
|
|
|
- index : 0,
|
|
|
- circular : true,
|
|
|
- },
|
|
|
- fetch: {
|
|
|
- is_read : false,
|
|
|
- is_ticket : false,
|
|
|
- info : {},
|
|
|
- button : {},
|
|
|
- code : '',
|
|
|
- share : {},
|
|
|
- },
|
|
|
- buyState : false,
|
|
|
- rankingState : false,
|
|
|
- infoState : false,
|
|
|
- inviteState : true,
|
|
|
- }
|
|
|
- },
|
|
|
- onLoad(option) {
|
|
|
- this.id = option.id;
|
|
|
- this.code = option.code;
|
|
|
- },
|
|
|
- onShow() {
|
|
|
- if (this.id || this.code) {
|
|
|
- this.getData();
|
|
|
- }
|
|
|
- },
|
|
|
- // 重新加载
|
|
|
- onPullDownRefresh: function() {
|
|
|
- this.getData();
|
|
|
- },
|
|
|
- methods:{
|
|
|
- change : function(e) {
|
|
|
- this.swiper.index = e.detail.current;
|
|
|
- },
|
|
|
- getData : function() {
|
|
|
- var url = this.Dever.host + '/pages/dream/index';
|
|
|
- this.Dever.get(this, 'app/collection/?l=api.getInfo', {id:this.id,code:this.code,url:url}, function(t) {
|
|
|
- uni.setNavigationBarTitle({
|
|
|
- title:t.info.name
|
|
|
- });
|
|
|
- });
|
|
|
- },
|
|
|
- goView : function() {
|
|
|
- //是否登录
|
|
|
- var token = this.Dever.getToken();
|
|
|
- if (!token) {
|
|
|
- var self = this;
|
|
|
- this.Dever.alert('您还未登录,请先登录', 'none', function() {
|
|
|
- if (self.id) {
|
|
|
- self.Dever.login = 'user/login?id=' + self.id;
|
|
|
- } else if (self.code) {
|
|
|
- self.Dever.login = 'user/login?code=' + self.code;
|
|
|
- }
|
|
|
-
|
|
|
- self.Dever.checkLogin();
|
|
|
- });
|
|
|
+ </view>
|
|
|
|
|
|
- return;
|
|
|
- }
|
|
|
- //是否已经有权限阅读
|
|
|
- if (!this.fetch.is_read) {
|
|
|
- this.showBuy();
|
|
|
- } else {
|
|
|
- this.view();
|
|
|
- }
|
|
|
- },
|
|
|
- view : function() {
|
|
|
- this.Dever.location('dream/view?code='+this.fetch.code + '&name=' + this.fetch.info.name);
|
|
|
- },
|
|
|
- showInvite : function() {
|
|
|
- this.inviteState = true;
|
|
|
- },
|
|
|
- hideInvite : function() {
|
|
|
- this.inviteState = false;
|
|
|
- },
|
|
|
- saveTicket : function(code) {
|
|
|
- var self = this;
|
|
|
- this.Dever.post('app/user/?l=api.saveTicket', {code:code}, function(t) {
|
|
|
- self.Dever.alert('已收下');
|
|
|
- self.hideInvite();
|
|
|
- });
|
|
|
- },
|
|
|
- showBuy : function() {
|
|
|
- if (this.fetch.is_ticket) {
|
|
|
- this.buyState = true;
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ </view>
|
|
|
+ </gracePage>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+ import buy from "@/pages/dream/buy.vue";
|
|
|
+ import ranking from "@/pages/dream/ranking.vue";
|
|
|
+ import info from "@/pages/dream/info.vue";
|
|
|
+ import deverShare from '@/lib/dever/components/share.vue';
|
|
|
+ export default {
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ swipers: [
|
|
|
+ "https://go.cdn.heytea.com/storage/ad/2020/05/21/bfd57914d80d4671b19f5d0ccc176cd5.jpg",
|
|
|
+ "https://go.cdn.heytea.com/storage/ad/2020/05/24/49f9b50738dd47878cf1ab54c2eee2e0.jpg",
|
|
|
+ "https://go.cdn.heytea.com/storage/ad/2020/05/01/e1c6915022c849fd9492377021aef454.jpg",
|
|
|
+ "https://go.cdn.heytea.com/storage/ad/2020/04/27/db60b797c1cd4afabe9666e7df958ffd.jpg",
|
|
|
+ "https://go.cdn.heytea.com/storage/ad/2020/05/21/4ba53dda599345bdaf28a08420dd1b6f.jpg"
|
|
|
+ ],
|
|
|
+ id : 0,
|
|
|
+ swiper : {
|
|
|
+ index : 0,
|
|
|
+ circular : true,
|
|
|
+ },
|
|
|
+ fetch: {
|
|
|
+ is_read : false,
|
|
|
+ is_ticket : false,
|
|
|
+ info : {},
|
|
|
+ button : {},
|
|
|
+ code : '',
|
|
|
+ share : {},
|
|
|
+ },
|
|
|
+ buyState : false,
|
|
|
+ rankingState : false,
|
|
|
+ infoState : false,
|
|
|
+ inviteState : true,
|
|
|
}
|
|
|
},
|
|
|
- hideBuy : function() {
|
|
|
- this.buyState = false;
|
|
|
+ onLoad(option) {
|
|
|
+ this.id = option.id;
|
|
|
+ this.code = option.code;
|
|
|
},
|
|
|
- hideRanking : function() {
|
|
|
- this.rankingState = false;
|
|
|
- },
|
|
|
- goRanking : function() {
|
|
|
- this.rankingState = true;
|
|
|
+ onShow() {
|
|
|
+ if (this.id || this.code) {
|
|
|
+ this.getData();
|
|
|
+ }
|
|
|
},
|
|
|
- goInfo : function() {
|
|
|
- this.infoState = true;
|
|
|
+ // 重新加载
|
|
|
+ onPullDownRefresh: function() {
|
|
|
+ this.getData();
|
|
|
},
|
|
|
- hideInfo : function() {
|
|
|
- this.infoState = false;
|
|
|
+ methods: {
|
|
|
+ change : function(e) {
|
|
|
+ this.swiper.index = e.detail.current;
|
|
|
+ },
|
|
|
+ getData : function() {
|
|
|
+ var url = this.Dever.host + '/pages/dream/index';
|
|
|
+ this.Dever.get(this, 'app/collection/?l=api.getInfo', {id:this.id,code:this.code,url:url}, function(t) {
|
|
|
+ uni.setNavigationBarTitle({
|
|
|
+ title:t.info.name
|
|
|
+ });
|
|
|
+ });
|
|
|
+ },
|
|
|
+ goView : function() {
|
|
|
+ //是否登录
|
|
|
+ var token = this.Dever.getToken();
|
|
|
+ if (!token) {
|
|
|
+ var self = this;
|
|
|
+ this.Dever.alert('您还未登录,请先登录', 'none', function() {
|
|
|
+ if (self.id) {
|
|
|
+ self.Dever.login = 'user/login?id=' + self.id;
|
|
|
+ } else if (self.code) {
|
|
|
+ self.Dever.login = 'user/login?code=' + self.code;
|
|
|
+ }
|
|
|
+
|
|
|
+ self.Dever.checkLogin();
|
|
|
+ });
|
|
|
+
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ //是否已经有权限阅读
|
|
|
+ if (!this.fetch.is_read) {
|
|
|
+ this.showBuy();
|
|
|
+ } else {
|
|
|
+ this.view();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ view : function() {
|
|
|
+ this.Dever.location('dream/view?code='+this.fetch.code + '&name=' + this.fetch.info.name);
|
|
|
+ },
|
|
|
+ showInvite : function() {
|
|
|
+ this.inviteState = true;
|
|
|
+ },
|
|
|
+ hideInvite : function() {
|
|
|
+ this.inviteState = false;
|
|
|
+ },
|
|
|
+ saveTicket : function(code) {
|
|
|
+ var self = this;
|
|
|
+ this.Dever.post('app/user/?l=api.saveTicket', {code:code}, function(t) {
|
|
|
+ self.Dever.alert('已收下');
|
|
|
+ self.hideInvite();
|
|
|
+ });
|
|
|
+ },
|
|
|
+ showBuy : function() {
|
|
|
+ if (this.fetch.is_ticket) {
|
|
|
+ this.buyState = true;
|
|
|
+ }
|
|
|
+ },
|
|
|
+ hideBuy : function() {
|
|
|
+ this.buyState = false;
|
|
|
+ },
|
|
|
+ hideRanking : function() {
|
|
|
+ this.rankingState = false;
|
|
|
+ },
|
|
|
+ goRanking : function() {
|
|
|
+ this.rankingState = true;
|
|
|
+ },
|
|
|
+ goInfo : function() {
|
|
|
+ this.infoState = true;
|
|
|
+ },
|
|
|
+ hideInfo : function() {
|
|
|
+ this.infoState = false;
|
|
|
+ },
|
|
|
+ share : function() {
|
|
|
+ this.$refs.share.open();
|
|
|
+ }
|
|
|
},
|
|
|
- share : function() {
|
|
|
- this.$refs.share.open();
|
|
|
- }
|
|
|
- },
|
|
|
- components:{
|
|
|
- buy,ranking,info,deverShare
|
|
|
- }
|
|
|
-}
|
|
|
-</script>
|
|
|
-<style>
|
|
|
-.btn-title {
|
|
|
- text-align: center;
|
|
|
- font-size: 24rpx;
|
|
|
- font-weight: bold;
|
|
|
+ components:{
|
|
|
+ buy,ranking,info,deverShare
|
|
|
+ }
|
|
|
+ }
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="scss" scoped>
|
|
|
+ page {
|
|
|
+ max-height: 100%;
|
|
|
+ }
|
|
|
+
|
|
|
+ .banner-swiper {
|
|
|
+ width: 100%;
|
|
|
+ height: 600rpx;
|
|
|
+
|
|
|
+ .banner-swiper-item {
|
|
|
+ image {
|
|
|
+ width: 100%;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .content {
|
|
|
+ width: 100%;
|
|
|
+ padding: 0 30rpx;
|
|
|
+ position: relative;
|
|
|
+ }
|
|
|
|
|
|
-}
|
|
|
-.btn-title .grace-title-text {
|
|
|
- border-bottom: 1px solid #bababa;
|
|
|
- color:#F5F6F8;
|
|
|
-}
|
|
|
-.wrap2{
|
|
|
- width:220rpx;
|
|
|
- position: absolute;
|
|
|
- right: 20rpx;
|
|
|
- top: 20rpx;
|
|
|
- z-index: 10;
|
|
|
-}
|
|
|
-.demo2{line-height:66rpx; display:block; width:100%; text-align:center; font-size:28rpx;}
|
|
|
-.container {
|
|
|
- position: absolute;
|
|
|
- height: 100%;
|
|
|
- width: 100%;
|
|
|
- left: 0;
|
|
|
- top: 0;
|
|
|
- overflow: hidden;
|
|
|
-}
|
|
|
-.btn-wrapper {
|
|
|
- justify-content: space-around;
|
|
|
- width: 100%;
|
|
|
-}
|
|
|
-
|
|
|
-.button {
|
|
|
- height: 80rpx;
|
|
|
- border: 1rpx solid #cc1619;
|
|
|
- color: #cc1619;
|
|
|
- font-size: 30rpx;
|
|
|
- min-width: 300rpx;
|
|
|
- border-radius: 40rpx;
|
|
|
- text-align: center;
|
|
|
- line-height: 80rpx;
|
|
|
- display: block;
|
|
|
- position: relative;
|
|
|
-}
|
|
|
-.button>button{
|
|
|
- position: absolute;
|
|
|
- width: 100%;
|
|
|
- height: 100%;
|
|
|
- left: 0;
|
|
|
- top: 0;
|
|
|
- opacity: 0;
|
|
|
-}
|
|
|
-
|
|
|
-.button.big {
|
|
|
- width: 630rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.button.primary {
|
|
|
- background-color: #cc1619;
|
|
|
- color: #fff;
|
|
|
-}
|
|
|
-
|
|
|
-.button.blk {
|
|
|
- background-color: #000;
|
|
|
- color: #fff;
|
|
|
- border-color: #000;
|
|
|
-}
|
|
|
-.cover {
|
|
|
- width: 750rpx;
|
|
|
- height: 100%;
|
|
|
-}
|
|
|
-
|
|
|
-swiper-item>view{
|
|
|
- height: 100%;
|
|
|
-}
|
|
|
-swiper-item image{
|
|
|
- width: 750rpx;
|
|
|
- height: 100%;
|
|
|
-}
|
|
|
-
|
|
|
-.btn-ctrls {
|
|
|
- position: absolute;
|
|
|
- bottom: 40rpx;
|
|
|
- left: 200rpx;
|
|
|
- right: 200rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.btn-ctrls .btn-wrapper {
|
|
|
- margin-top: 20rpx;
|
|
|
- width: 350rpx;
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- border-radius: 5rpx;
|
|
|
- background-color: #000;
|
|
|
-}
|
|
|
-
|
|
|
-.btn-ctrls .btn-wrapper .button{
|
|
|
- border-radius: 0;
|
|
|
- min-width: 100rpx;
|
|
|
- background-color: transparent;
|
|
|
- border: 0;
|
|
|
- flex: 1;
|
|
|
-}
|
|
|
-.btn-ctrls .btn-wrapper .spliter{
|
|
|
- flex-shrink: 0;
|
|
|
- width: 1rpx;
|
|
|
- background: #fff;
|
|
|
- height: 40rpx;
|
|
|
- color: #333;
|
|
|
-}
|
|
|
-.btn-ctrls .btn-wrapper .button.small{
|
|
|
- min-width: 150rpx;
|
|
|
-}
|
|
|
-.btn-ctrls .btn-wrapper .button.big{
|
|
|
- width: 420rpx;
|
|
|
-}
|
|
|
-.btn-ctrls .dots{
|
|
|
- display: flex;
|
|
|
- justify-content: center;
|
|
|
- margin-top: 20rpx;
|
|
|
-}
|
|
|
-.btn-ctrls .dots text{
|
|
|
- display: block;
|
|
|
- width: 16rpx;
|
|
|
- height: 8rpx;
|
|
|
- background: rgba(255, 255, 255, 0.5);
|
|
|
- border-radius: 8rpx;
|
|
|
- margin: 0 5rpx;
|
|
|
-}
|
|
|
-.btn-ctrls .dots text.cur{
|
|
|
- background-color: rgba(255, 255, 255, 1);
|
|
|
-}
|
|
|
-.btn-ctrls .scorelist{
|
|
|
- text-align: center;
|
|
|
-}
|
|
|
-.btn-ctrls .scorelist navigator{
|
|
|
- display: inline-block;
|
|
|
- font-size: 26rpx;
|
|
|
- color: #FFFFFF;
|
|
|
- text-decoration: underline;
|
|
|
-}
|
|
|
-
|
|
|
-.space-between{
|
|
|
- justify-content: space-between;
|
|
|
-}
|
|
|
-.btn-wrapper{
|
|
|
- display: flex;
|
|
|
-}
|
|
|
-.ios-pay{
|
|
|
- display: none;
|
|
|
-}
|
|
|
-
|
|
|
-.pulloff{
|
|
|
- position: fixed;
|
|
|
- width: 100%;
|
|
|
- height: 100%;
|
|
|
- top: 0;
|
|
|
- left: 0;
|
|
|
- z-index: 20;
|
|
|
- display: flex;
|
|
|
- align-items: center;
|
|
|
- justify-content: center;
|
|
|
-}
|
|
|
-.pulloff>view{
|
|
|
- background-color: rgba(0, 0, 0, 0.65);
|
|
|
- padding: 53rpx 53rpx 53rpx 74rpx;
|
|
|
- border-radius: 10rpx;
|
|
|
- text-align: center;
|
|
|
-}
|
|
|
-.pulloff>view text{
|
|
|
- color: #fff;
|
|
|
- font-size: 30rpx;
|
|
|
- line-height: 53rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.preselltip .layer{
|
|
|
- border-radius: 5rpx;
|
|
|
- padding:70rpx 40rpx;
|
|
|
-}
|
|
|
-.preselltip .layer .tit{
|
|
|
- font-size: 24rpx;
|
|
|
- text-align: center;
|
|
|
- margin: 16rpx 0 80rpx;
|
|
|
-}
|
|
|
-.preselltip .layer .btn-wrapper{
|
|
|
- position: absolute;
|
|
|
- bottom: 0;
|
|
|
- left: 0;
|
|
|
-}
|
|
|
-.preselltip .layer .btn-wrapper .button{
|
|
|
- width: 100%;
|
|
|
- border-radius: 0 0 5rpx 5rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.recharge-layer{
|
|
|
- padding: 50rpx 55rpx 62rpx;
|
|
|
- background-color: #fff;
|
|
|
- position: absolute;
|
|
|
- bottom: 0;
|
|
|
- left: 0;
|
|
|
- right: 0;
|
|
|
- transform: translateY(100%);
|
|
|
- transition-property: transform;
|
|
|
- transition-duration: 0.3s;
|
|
|
- transition-timing-function: ease-in;
|
|
|
-}
|
|
|
-.recharge-layer.slidein{
|
|
|
- transform: translateY(0);
|
|
|
-}
|
|
|
-.recharge-layer .tit{
|
|
|
- font-weight: bolder;
|
|
|
- font-size: 36rpx;
|
|
|
- margin: 0 0 40rpx;
|
|
|
-}
|
|
|
-.recharge-layer .msg{
|
|
|
- font-size: 22rpx;
|
|
|
- line-height: 36rpx;
|
|
|
- width: 640rpx;
|
|
|
- margin: 0 auto 47rpx;
|
|
|
-}
|
|
|
-.recharge-layer input{
|
|
|
- width: 640rpx;
|
|
|
- height: 88rpx;
|
|
|
- border: 1rpx solid #EEEEEE;
|
|
|
- border-radius: 5rpx;
|
|
|
- box-sizing: border-box;
|
|
|
- padding: 0 25rpx;
|
|
|
- font-size: 24rpx;
|
|
|
-}
|
|
|
-.recharge-layer .errtip {
|
|
|
- color: #d1171a;
|
|
|
- font-size: 24rpx;
|
|
|
- margin: 21rpx 0 0;
|
|
|
- height: 34rpx;
|
|
|
-}
|
|
|
-.recharge-layer .btn-wrapper{
|
|
|
- display: flex;
|
|
|
- justify-content: space-between;
|
|
|
- padding-top: 20rpx;
|
|
|
-}
|
|
|
-.recharge-layer .btn-wrapper .button{
|
|
|
- border: 0;
|
|
|
- min-width: 0;
|
|
|
- border-radius: 5rpx;
|
|
|
- box-sizing: border-box;
|
|
|
- color: #999999;
|
|
|
- width: 284rpx;
|
|
|
-}
|
|
|
-.recharge-layer .btn-wrapper .button.primary{
|
|
|
- border:0;
|
|
|
- color: #fff;
|
|
|
-}
|
|
|
-.recharge-layer .btn-wrapper .button.cancel{
|
|
|
- border:0;
|
|
|
- background-color: #CCCCCC;
|
|
|
- color: #fff;
|
|
|
-}
|
|
|
-.recharge-mask{
|
|
|
- position: fixed;
|
|
|
- width: 100%;
|
|
|
- height: 100%;
|
|
|
- background: rgba(0, 0, 0, 0.5);
|
|
|
- left: 0;
|
|
|
- top: 0;
|
|
|
- display: none;
|
|
|
-}
|
|
|
-
|
|
|
-.mask {
|
|
|
- position: fixed;
|
|
|
- left: 0;
|
|
|
- top: 0;
|
|
|
- right: 0;
|
|
|
- bottom: 0;
|
|
|
- background: rgba(0, 0, 0, 0.5);
|
|
|
- z-index:100;
|
|
|
-}
|
|
|
-
|
|
|
-.mask .layer {
|
|
|
- width: 570rpx;
|
|
|
- box-sizing: border-box;
|
|
|
- padding: 70rpx 60rpx;
|
|
|
- background: #fff;
|
|
|
- border-radius: 10rpx;
|
|
|
- position: absolute;
|
|
|
- top: 50%;
|
|
|
- left: 50%;
|
|
|
- transform: translate(-50%,-50%);
|
|
|
-}
|
|
|
-
|
|
|
-.mask .layer .tit {
|
|
|
- text-align: center;
|
|
|
- font-size: 40rpx;
|
|
|
- margin: 16rpx 0 60rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.mask .layer input {
|
|
|
- border-radius: 10rpx;
|
|
|
- border: 1rpx solid #999;
|
|
|
- height: 88rpx;
|
|
|
- line-height: 88rpx;
|
|
|
- padding: 0 28rpx;
|
|
|
- box-sizing: border-box;
|
|
|
- font-size: 24rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.mask .layer .errtip {
|
|
|
- color: #d1171a;
|
|
|
- text-align: center;
|
|
|
- font-size: 24rpx;
|
|
|
- margin: 21rpx 0;
|
|
|
- height: 34rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.mask .layer .btn-wrapper {
|
|
|
- padding-top: 30rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.buytip{
|
|
|
- font-size: 24rpx;
|
|
|
- color: #999999;
|
|
|
- text-decoration: underline;
|
|
|
- padding-bottom: 40rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.p{
|
|
|
- font-size: 28rpx;
|
|
|
- text-align: justify;
|
|
|
- line-height: 40rpx;
|
|
|
- margin-bottom: 12rpx;
|
|
|
- display: block;
|
|
|
- box-sizing: border-box;
|
|
|
-}
|
|
|
-.buy-tit{
|
|
|
- font-size: 40rpx;
|
|
|
- /* font-weight: bolder; */
|
|
|
- text-align: center;
|
|
|
- margin-bottom: 40rpx;
|
|
|
-}
|
|
|
-.mask .buytip-layer{
|
|
|
- padding: 60rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.buy-layer .btn-wrapper{
|
|
|
- display: flex;
|
|
|
- justify-content: space-between;
|
|
|
- padding-top: 20rpx;
|
|
|
-}
|
|
|
-.buy-layer .btn-wrapper .button{
|
|
|
- border: 0;
|
|
|
- min-width: 0;
|
|
|
- box-sizing: border-box;
|
|
|
- color: #999999;
|
|
|
- width: 200rpx;
|
|
|
- border-radius: 5rpx;
|
|
|
-}
|
|
|
-.buy-layer .btn-wrapper .button.primary{
|
|
|
- border:0;
|
|
|
- color: #fff;
|
|
|
-}
|
|
|
-.buy-layer .btn-wrapper .button.cancel{
|
|
|
- border:0;
|
|
|
- background-color: #CCCCCC;
|
|
|
- color: #fff;
|
|
|
-}
|
|
|
-.buy-user {
|
|
|
- width:150rpx;
|
|
|
- height:150rpx;
|
|
|
- border-radius: 50%;
|
|
|
- object-fit: cover;
|
|
|
- object-position: center;
|
|
|
- position: absolute;
|
|
|
- top: -16%;
|
|
|
- left: 208rpx;
|
|
|
-}
|
|
|
-.buy-user image {
|
|
|
- border-radius: 50%;
|
|
|
-}
|
|
|
-</style>
|
|
|
+ .section-1 {
|
|
|
+ position: relative;
|
|
|
+ background-color: $bg-color-white;
|
|
|
+ margin-top: -60rpx;
|
|
|
+ border-radius: $border-radius-lg;
|
|
|
+ padding: 60rpx 0;
|
|
|
+ display: flex;
|
|
|
+ margin-bottom: 30rpx;
|
|
|
+ box-shadow: $box-shadow;
|
|
|
+
|
|
|
+ .item {
|
|
|
+ flex: 1;
|
|
|
+ flex-shrink: 0;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ align-items: center;
|
|
|
+ position: relative;
|
|
|
+
|
|
|
+ &:nth-child(1):after {
|
|
|
+ content: '';
|
|
|
+ position: absolute;
|
|
|
+ right: 0;
|
|
|
+ top: 0;
|
|
|
+ bottom: 0;
|
|
|
+ width: 2rpx;
|
|
|
+ background-color: $border-color;
|
|
|
+ }
|
|
|
+
|
|
|
+ image {
|
|
|
+ width: 100rpx;
|
|
|
+ margin-bottom: 20rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ .wenyue-font {
|
|
|
+ font-size: 48rpx;
|
|
|
+ margin-bottom: 10rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .section-2 {
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ margin-bottom: 30rpx;
|
|
|
+
|
|
|
+ .item {
|
|
|
+ width: 335rpx;
|
|
|
+ background-color: #EAEBEC;
|
|
|
+ padding: $spacing-row-lg 0;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ border-radius: $border-radius-lg;
|
|
|
+
|
|
|
+ .title {
|
|
|
+ width: 100%;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ font-size: $font-size-lg;
|
|
|
+
|
|
|
+ image {
|
|
|
+ width: 60rpx;
|
|
|
+ height: 60rpx;
|
|
|
+ margin-right: 10rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .tips {
|
|
|
+ color: $text-color-assist;
|
|
|
+ font-size: $font-size-base;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .section-3 {
|
|
|
+ margin-bottom: 30rpx;
|
|
|
+ display: flex;
|
|
|
+ justify-content: space-between;
|
|
|
+ align-items: center;
|
|
|
+ font-size: $font-size-base;
|
|
|
+ color: $text-color-assist;
|
|
|
+ padding: 0 10rpx;
|
|
|
+
|
|
|
+ .my-integral {
|
|
|
+ flex: 1;
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+
|
|
|
+ .integrals {
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ font-size: $font-size-lg;
|
|
|
+ color: $text-color-base;
|
|
|
+ margin-bottom: 10rpx;
|
|
|
+
|
|
|
+ .neutra-font {
|
|
|
+ margin-left: 10rpx;
|
|
|
+ font-size: 42rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ .my-code {
|
|
|
+ display: flex;
|
|
|
+ flex-direction: column;
|
|
|
+ align-items: center;
|
|
|
+ padding: 0 30rpx;
|
|
|
+ position: relative;
|
|
|
+
|
|
|
+ image {
|
|
|
+ width: 60rpx;
|
|
|
+ height: 60rpx;
|
|
|
+ margin-bottom: $spacing-col-sm;
|
|
|
+ }
|
|
|
+
|
|
|
+ &:before {
|
|
|
+ content: " ";
|
|
|
+ position: absolute;
|
|
|
+ left: 0;
|
|
|
+ top: 0;
|
|
|
+ bottom: 0;
|
|
|
+ border-left: 1rpx solid rgba($color: $border-color, $alpha: 0.6);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+</style>
|