This commit is contained in:
Net 2025-05-06 13:03:49 +08:00
parent 3ed953e4a3
commit c27ef64976
24 changed files with 70 additions and 61 deletions

1
.gitignore vendored
View File

@ -1,2 +1,3 @@
/node_modules/
/.idea/
*/.DS_Store

View File

@ -8,7 +8,9 @@
<view class="content-container">
<!-- 用户信息卡片 -->
<view class="user-info-card">
<view class="user-avatar-placeholder"></view>
<view class="user-avatar-placeholder">
<image :src="currentStudent.avatar" class="w-full h-full"></image>
</view>
<view
class="user-details"
@click="navigateTo('/pages/base/parentRegister/index')"
@ -26,7 +28,9 @@
<!-- 学校横幅 -->
<view class="school-banner">
<view class="banner-placeholder"></view>
<view class="banner-placeholder">
<image src="/static/base/home/2211.png" class="w-full h-full"></image>
</view>
</view>
<!-- 功能菜单 -->
@ -37,7 +41,9 @@
class="grid-item"
@click="handleMenuClick(item)"
>
<view class="grid-icon-placeholder"></view>
<view class="grid-icon-placeholder">
<image :src="item.icon" class="w-full h-full"></image>
</view>
<text class="grid-text">{{ item.title }}</text>
</view>
</view>
@ -114,32 +120,32 @@ import { ref } from "vue";
const menuItems = ref([
{
title: "班级课表",
icon: "",
icon: "/static/base/home/book-read-line.png",
path: "/pages/base/class-schedule/index",
},
{
title: "在线请假",
icon: "",
icon: "/static/base/home/draft-line.png",
path: "/pages/base/leave-request/index",
},
{
title: "进出校园",
icon: "",
icon: "/static/base/home/file-transfer-line.png",
path: "/pages/base/campus-access/index",
},
{
title: "兴趣课",
icon: "",
icon: "/static/base/home/file-text-line.png",
path: "/pages/base/interest-class/index",
},
{
title: "俱乐部",
icon: "",
icon: "/static/base/home/contacts-book-3-line.png",
path: "/pages/base/club/index",
},
{
title: "成绩查询",
icon: "",
icon: "/static/base/home/file-search-line.png",
path: "/pages/base/grades/index",
},
]);
@ -173,7 +179,7 @@ const studentList = ref([
name: "陶亦菲",
grade: "2年级",
class: "01班",
avatar: "",
avatar: "/static/base/home/11222.png",
},
{
id: "2",
@ -276,7 +282,6 @@ function switchStudent(student: any) {
width: 60px;
height: 60px;
border-radius: 50%;
background-color: #f0f0f0;
border: 1px dashed #d0d0d0;
flex-shrink: 0;
}
@ -324,7 +329,6 @@ function switchStudent(student: any) {
.banner-placeholder {
width: 100%;
height: 150px;
background-color: #f0f0f0;
border: 1px dashed #d0d0d0;
display: flex;
align-items: center;
@ -351,7 +355,6 @@ function switchStudent(student: any) {
.grid-icon-placeholder {
width: 40px;
height: 40px;
background-color: #f0f0f0;
border-radius: 6px;
margin-bottom: 8px;
}

View File

@ -1,25 +1,23 @@
<template>
<view class="interest-class-page">
<u-navbar title="兴趣课" :autoBack="true"></u-navbar>
<view class="content-container">
<!-- 顶部蓝色背景横幅 -->
<view class="banner-section">
<view class="banner-placeholder">
<view class="banner-content">
<text class="banner-title">兴趣课程</text>
<text class="banner-school">泸州市实验小学城西学校</text>
</view>
<image src="/static/base/home/43221.png" mode="widthFix" class="w-full h-full"></image>
</view>
</view>
<!-- 我的课程 -->
<view class="my-course-section">
<view class="section-title">
<u-icon name="calendar" size="18" color="#1976d2"></u-icon>
<text class="title-text">我的课程</text>
</view>
<view class="course-card">
<view class="course-image-placeholder"></view>
<view class="course-info">
@ -35,42 +33,48 @@
</view>
</view>
</view>
<!-- 教学计划 -->
<view class="teaching-plan-section">
<view class="section-title-bar">
<text class="title-text">教学计划</text>
</view>
<view class="plan-content">
<view class="plan-item">
<text class="plan-phase">第一阶段</text>
<text class="plan-desc">了解机器人的组成知道每个零件的名称及用途认识机器人的结构</text>
<text class="plan-desc"
>了解机器人的组成知道每个零件的名称及用途认识机器人的结构</text
>
</view>
<view class="plan-item">
<text class="plan-phase">第二阶段</text>
<text class="plan-desc">在老师的引导下分组搭建机器人注意引导幼儿理解机器人的数据线连接和遥控器方向的关系</text>
<text class="plan-desc"
>在老师的引导下分组搭建机器人注意引导幼儿理解机器人的数据线连接和遥控器方向的关系</text
>
</view>
<view class="plan-item">
<text class="plan-phase">第三阶段</text>
<text class="plan-desc">学会操控机器人的移动方向并练习把魔方根据要求推到指定位置</text>
<text class="plan-desc"
>学会操控机器人的移动方向并练习把魔方根据要求推到指定位置</text
>
</view>
<view class="plan-item">
<text class="plan-phase">第四阶段</text>
<text class="plan-desc">组织幼儿参加创客机器人比赛</text>
</view>
</view>
</view>
<!-- 课堂随拍 -->
<view class="class-photos-section">
<view class="section-title-bar">
<text class="title-text">课堂随拍</text>
</view>
<view class="photos-grid">
<view class="photo-placeholder"></view>
<view class="photo-placeholder"></view>
@ -83,7 +87,7 @@
</template>
<script setup lang="ts">
import { ref } from 'vue'
import { ref } from "vue";
</script>
<style lang="scss" scoped>
@ -99,18 +103,18 @@ import { ref } from 'vue'
/* 顶部蓝色背景横幅 */
.banner-section {
margin-bottom: 15px;
.banner-placeholder {
height: 120px;
background-color: #3986FF;
background-color: #3986ff;
border-radius: 10px;
display: flex;
justify-content: center;
align-items: center;
.banner-content {
text-align: center;
.banner-title {
font-size: 22px;
color: #ffffff;
@ -118,7 +122,7 @@ import { ref } from 'vue'
margin-bottom: 8px;
display: block;
}
.banner-school {
font-size: 14px;
color: rgba(255, 255, 255, 0.9);
@ -130,12 +134,12 @@ import { ref } from 'vue'
/* 我的课程 */
.my-course-section {
margin-bottom: 15px;
.section-title {
display: flex;
align-items: center;
margin-bottom: 12px;
.title-text {
font-size: 16px;
font-weight: 500;
@ -143,14 +147,14 @@ import { ref } from 'vue'
margin-left: 6px;
}
}
.course-card {
background-color: #ffffff;
border-radius: 10px;
padding: 15px;
display: flex;
align-items: center;
.course-image-placeholder {
width: 120px;
height: 100px;
@ -159,30 +163,30 @@ import { ref } from 'vue'
margin-right: 15px;
flex-shrink: 0;
}
.course-info {
flex: 1;
.course-name {
font-size: 18px;
font-weight: 500;
color: #303133;
margin-bottom: 10px;
}
.course-detail {
display: flex;
margin-bottom: 6px;
&:last-child {
margin-bottom: 0;
}
.detail-label {
color: #606266;
font-size: 14px;
}
.detail-value {
color: #303133;
font-size: 14px;
@ -198,35 +202,35 @@ import { ref } from 'vue'
background-color: #ffffff;
border-radius: 10px;
overflow: hidden;
.section-title-bar {
padding: 12px 15px;
border-bottom: 1px solid #f2f2f2;
.title-text {
font-size: 16px;
font-weight: 500;
color: #303133;
}
}
.plan-content {
padding: 15px;
.plan-item {
margin-bottom: 15px;
&:last-child {
margin-bottom: 0;
}
}
.plan-phase {
font-size: 15px;
font-weight: 500;
color: #303133;
}
.plan-desc {
font-size: 14px;
color: #606266;
@ -240,23 +244,23 @@ import { ref } from 'vue'
background-color: #ffffff;
border-radius: 10px;
overflow: hidden;
.section-title-bar {
padding: 12px 15px;
border-bottom: 1px solid #f2f2f2;
.title-text {
font-size: 16px;
font-weight: 500;
color: #303133;
}
}
.photos-grid {
display: flex;
flex-wrap: wrap;
padding: 15px;
.photo-placeholder {
width: calc(50% - 8px);
height: 110px;
@ -264,15 +268,16 @@ import { ref } from 'vue'
border-radius: 6px;
margin-right: 8px;
margin-bottom: 8px;
&:nth-child(2n) {
margin-right: 0;
}
&:nth-child(3), &:nth-child(4) {
&:nth-child(3),
&:nth-child(4) {
margin-bottom: 0;
}
}
}
}
</style>
</style>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 726 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 343 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 426 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 407 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 627 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 598 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 510 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 597 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 565 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 563 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 720 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 640 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 344 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 711 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 585 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 901 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 958 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB