<template> <!-- 头部代码 --> <view class="view_by"> <u-navbar :is-back="false" title='首页' title-color="#2E4975" :border-bottom="false" :background="true" id="navbar"> </u-navbar> <view class="noinfo"> <view class="noinfo_tit"> 当前暂无学习数据,快去布置作业吧! </view> <view class="noinfo_btn"> 去安排 <image src="https://file.langsi.online/yasiimg/web/static/urw7xsodoO8Ay2ZWizL4" mode=""></image> </view> </view> <view class="top_message" v-if="false"> <view class="top_message_left"> <view class="top_message_left_top"> 32 </view> <view class="top_message_left_bot"> 已完成人数(人) </view> </view> <view class="top_message_cent"> </view> <view class="top_message_right"> <view class="top_message_right_top"> 90% </view> <view class="top_message_right_bot"> 已完成作业正确率 </view> </view> </view> <view class="work_msa"> <view class="work_img"> <image src="https://file.langsi.online/yasiimg/web/static/ukr9UZt8xuv2DgcwkWCq" mode=""></image> </view> <view class="work_msa_top"> <view class="work_msa_top_left"> 作业完成情况 </view> <view class="work_msa_top_right"> 本周 <view class="iconfont icon-arrow-down"></view> </view> </view> <view class="echarts"> <!-- <mpvue-echarts id="main" ref="pieChart" :echarts="echarts" @onInit="initChart" /> --> <l-echart ref="chart" @finished="initChart"></l-echart> </view> </view> <div class="data"> 8月31日<view class="iconfont icon-arrow-down"></view> </div> <view class="class_infobox"> <view class="class_info" style="width:80rpx ;"> <view class="class_info_bot"> 21 </view> <view class="class_info_top"> 完成人数 </view> </view> <view class="class_info"> <view class="class_info_bot"> 6 </view> <view class="class_info_top"> 平均成绩/分 </view> </view> <view class="class_info"> <view class="class_info_bot"> 80% </view> <view class="class_info_top"> 作业正确率 </view> </view> </view> <div class="card"> <view class="card_left"> <view class="stu_img"> <image src="https://file.langsi.online/yasiimg/web/static/udWNTRG6GulmTtgPRQ49" mode=""></image> </view> <view class="stu_info"> <view class="stu_info_top"> 口语单科模考 </view> <view class="stu_info_bot"> 李斯丹妮 </view> </view> </view> <view class="card_right"> <view class="card_right_top"> 正确率 80% </view> <view class="card_right_bot"> 2023/02/23 12:00 </view> </view> </div> </view> </template> <script> import * as echarts from '@/uni_modules/lime-echart/static/echarts.min' import LEchart from '@/uni_modules/lime-echart/components/l-echart/l-echart.vue'; export default { components: { LEchart }, data() { return { flag: true } }, methods: { async initChart() { let _this = this const option = { grid: { left: 0, right: 0, top: 10, bottom: 0, containLabel: true, }, xAxis: { type: 'category', data: ['Mon', '', 'Wed', '', 'Fri', '', 'Sun'] }, yAxis: { type: 'value', min: 0, max: 100, interval: 20, axisLabel: { formatter: '{value}%' } }, series: [{ data: [90, 45, 66, 82, 37, 65, 40], type: 'bar', itemStyle: { normal: { color: '#2D7CE6', barBorderRadius: [5, 5, 0, 0] // 设置四个角的半径,都为10像素 } } }] }; const chart = await this.$refs.chart.init(echarts); chart.setOption(option) //return chart }, } } </script> <style lang="scss"> page { background: linear-gradient(180deg, #E1EEFF 0%, #FFFFFF 100%); } .view_by { padding: 0 32rpx; .noinfo{ margin-top: 62rpx; margin-left: 186rpx; display: flex; flex-wrap: wrap; .noinfo_tit{ font-size: 28rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #627698; } .noinfo_btn{ margin-top: 18rpx; display: flex; flex-wrap: nowrap; justify-content: center; align-items: center; width: 160rpx; height: 56rpx; background: #2D7CE6; border-radius: 86rpx 86rpx 86rpx 86rpx; font-size: 20rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #FFFFFF; image{ margin-left: 8rpx; width: 16rpx; height: 16rpx; } } } .top_message { display: flex; flex-wrap: nowrap; justify-content: space-between; .top_message_left { margin-left: 60rpx; display: flex; flex-wrap: wrap; .top_message_left_top { width: 100%; text-align: center; font-size: 76rpx; font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; } .top_message_left_bot { width: 100%; text-align: center; font-size: 28rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #2E4975; } } .top_message_cent { width: 0; height: 146rpx; border-radius: 0rpx 0rpx 0rpx 0rpx; margin-left: 2rpx; border: 2rpx solid rgba(0, 0, 0, 0.11); } .top_message_right { margin-right: 60rpx; display: flex; flex-wrap: wrap; .top_message_right_top { width: 100%; text-align: center; font-size: 76rpx; font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; } .top_message_right_bot { width: 100%; text-align: center; font-size: 28rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #2E4975; } } } .work_msa { position: relative; padding: 32rpx; margin-top: 32rpx; width: 686rpx; height: 459rpx; background: #FFFFFF; border-radius: 20rpx 20rpx 20rpx 20rpx; .work_img{ position: absolute; left: 22rpx; top: -190rpx; height:190rpx ; width: 145.28rpx; } .work_msa_top { display: flex; flex-wrap: nowrap; justify-content: space-between; // justify-content: center; .work_msa_top_left { font-size: 28rpx; font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; } .work_msa_top_right { display: flex; align-items: center; flex-wrap: nowrap; font-size: 24rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(46, 73, 117, 0.65); .icon-arrow-down { margin-left: 8rpx; font-size: 24rpx; } } } } .echarts { // width: 100%; // height: 80%; width: 622rpx; height: 350rpx; } .data{ display: flex; flex-wrap: nowrap; align-items: center; margin-top: 32rpx; font-size: 24rpx; font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2E4975; .icon-arrow-down { color: #2E4975 ; margin-left: 8rpx; font-size: 24rpx; } } .class_infobox { margin-top: 20rpx; display: flex; flex-wrap: nowrap; align-items: center; justify-content: space-around; width: 686rpx; height: 128rpx; background: linear-gradient(179deg, rgba(255,237,223,0.65) 0%, #FFFFFF 100%); border-radius: 20rpx 20rpx 20rpx 20rpx; .class_info { width: 110rpx; display: flex; flex-wrap: wrap; justify-content: center; .class_info_top { margin-top: 12rpx; font-size: 20rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(7, 47, 90, 0.5); } .class_info_bot { font-size: 28rpx; font-family: 'PingFang', 'PingFang'; font-weight: 800; color: #2D7CE6; } } } .card{ display: flex; justify-content: space-between; align-items: center; margin-top: 20rpx; padding: 24rpx; width: 686rpx; height: 124rpx; background: #FFFFFF; border-radius: 20rpx 20rpx 20rpx 20rpx; .card_left{ display: flex; flex-wrap: nowrap; .stu_img{ width: 76rpx; height: 76rpx; border-radius: 50%; } .stu_info{ margin-left: 16rpx; .stu_info_top{ font-size: 28rpx; font-family: 'PingFang', 'PingFang'; font-weight: bold; color: #072F5A; } .stu_info_bot{ margin-top: 4rpx; font-size: 20rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(46,73,117,0.5); } } } .card_right{ .card_right_top{ text-align: right; font-size: 20rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: #F18F21; } .card_right_bot{ margin-top: 4rpx; text-align: right; font-size: 20rpx; font-family: 'PingFang', 'PingFang'; font-weight: 500; color: rgba(7,47,90,0.4); } } } } </style>