You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

236 lines
4.8 KiB

<template>
<view class="content">
<up-navbar leftText=" " :leftIconColor="'#fff'" :safeAreaInsetTop="true" :autoBack="true" title="我的学习"
:bgColor="'transparent'" :titleStyle="{color: '#fff'}">
</up-navbar>
<view class="padding">
<view class="useInfo flex">
<view class="avatar">
<image src="" mode=""></image>
</view>
<view class="rightBox">
<view class="name">用户名</view>
</view>
</view>
<view class="card">
<view class="bigNum">
<view class="num">80%</view>
<view class="lab">预测通过率</view>
</view>
<view class="huiBg">
<view class="li">
<view class="num">10:22</view>
<view class="lab">测试时长</view>
</view>
<view class="li">
<view class="num">10</view>
<view class="lab">已做题</view>
</view>
<view class="li">
<view class="num">14</view>
<view class="lab">答错题</view>
</view>
</view>
<view class="btnBox">
<oneBtn text="快速提升通过率" @oneBtnClick="$goPage('/pages/vip/vipEntry/vipEntry')"></oneBtn>
</view>
</view>
<view class="card card2">
<view class="chartTab">
<view class="h3">模拟考试成绩</view>
<view class="btn_row">
<view class="btn" @click="changeChart(1)" :class="{bg: currentChart==1}">曲线</view>
<view class="btn" @click="changeChart(2)" :class="{bg: currentChart==2}">明细</view>
</view>
</view>
<view class="tip">近30次科目一模拟考试成绩</view>
<view class="con" v-if="currentChart==1">
图表
<view class="tips">按住可左右滑动查看更多成绩</view>
</view>
<view class="con" v-if="currentChart==2">
<view class="tables">
<view class="fristTab li">
<view class="item">考试成绩</view>
<view class="item">考试用时</view>
<view class="item">考试时间</view>
</view>
<view class="li">
<view class="item">90</view>
<view class="item">10分30秒</view>
<view class="item">2024-8-28</view>
</view>
</view>
</view>
</view>
</view>
</view>
</template>
<script setup>
import { ref } from 'vue'
import nodata from '@/components/nodata/nodata.vue'
const value = ref(false)
const currentNav = ref(1)
function changeNav(val) {
currentNav.value = val
}
const currentChart = ref(1)
function changeChart(num) {
currentChart.value = num
}
</script>
<style lang="scss" scoped>
.content {
width: 100%;
min-height: 100vh;
padding: 100rpx 0rpx 30rpx 0rpx;
background: url('../../../static/images/topbg.png') #F6F7FA no-repeat;
background-size: 100% 410rpx;
.useInfo {
padding: 30rpx 0;
.avatar {
width: 140rpx;
height: 140rpx;
overflow: hidden;
border-radius: 50%;
background: url('../../../static/images/avatarbg.png') no-repeat;
background-size: 100% 100%;
image {
display: block;
width: 100%;
height: 100%;
}
}
.rightBox {
flex: 1;
width: 0;
padding-left: 30rpx;
.name {
font-size: 36rpx;
color: #FFFFFF;
font-weight: 500;
}
}
}
.bigNum {
padding: 20rpx 0 20rpx 0;
text-align: center;
.num {
font-weight: bold;
font-size: 72rpx;
color: #3776FF;
}
.lab {
font-weight: 400;
font-size: 24rpx;
color: #CCCCCC;
}
}
.huiBg {
width: 100%;
height: 164rpx;
display: flex;
justify-content: space-between;
align-items: center;
text-align: center;
padding-bottom: 30rpx ;
.li {
flex: 1;
.num {
font-family: DIN;
font-weight: bold;
font-size: 48rpx;
}
.lab {
font-size: 24rpx;
margin-top: 10rpx;
color: #999999;
}
}
}
.card {
background: #FFFFFF;
border-radius: 20rpx;
overflow: hidden;
margin-top: 20rpx;
padding: 30rpx;
}
.tables {
width: 100%;
.fristTab.li {
background: #F4F4F4;
border-radius: 8rpx 8rpx 0 0;
.item {
color: $themC;
}
}
.li {
height: 76rpx;
line-height: 76rpx;
border-bottom: 1rpx solid #F4F4F4;
display: flex;
.item {
text-align: center;
flex: 1;
font-size: 28rpx;
}
}
}
.tip {
font-size: 24rpx;
color: #ccc;
padding: 10rpx 0 30rpx;
}
.tips {
width: 360rpx;
height: 48rpx;
background: #DCE7FF;
border-radius: 24rpx;
font-size: 24rpx;
color: $themC;
text-align: center;
line-height: 48rpx;
margin-top: 30rpx;
}
.chartTab {
display: flex;
justify-content: space-between;
.btn_row {
display: flex;
width: 170rpx;
height: 44rpx;
border-radius: 8rpx;
overflow: hidden;
border: 1px solid $themC;
.btn.bg {
background: #3776FF;
color: #fff;
}
.btn {
color: $themC;
text-align: center;
font-size: 28rpx;
flex: 1;
}
}
}
}
</style>