Vue项目实战——【基于 Vue3.x + NodeJS】实现的课程表排课系统三(duration-title)

本文档介绍了如何使用Vue3.x和NodeJS构建课程表排课系统,重点讲解了DurationTitle组件的优化,实现了单元格的点击交互以及策略模式渲染卡片。同时,文中还展示了如何处理时间戳转换及单元格内×的制作。
摘要由CSDN通过智能技术生成

【基于 Vue3.x + NodeJS】实现的课程表排课系统三


优化一下左侧一列单元格(显示时间的第一列)

实现效果:

在这里插入图片描述

DurationTitle

ScheduleTable/index.vue

<!-- <td>{ { item.title }}</td> -->

这列单元格就是上面图中最左侧单元格的渲染语句,但是此时没有上图的背景颜色以及文字颜色,将其封装到一个组件中,引入代替<!-- <td>{ { item.title }}</td> -->

替代代码

<duration-title :title="item.title"></duration-title>

也要在index.vuescript标签中引入该组件,代码如下:

import DurationTitle from "./DurationTitle";

DurationTitle.vue

<template>
  <td class="duration-title">{
  { title }}</td>
</template>

<script setup>
import "./styles/duration-title.scss";
const props = defineProps({
     
  title: String,
});
</script>

duration-title.scss

.duration-title {
   
    color: #856404;
    background-color: #fff3cd;
}

在前一篇博客拿数据的方式只是浅拿一下 看下数据,所以要修改一下
ScheduleTable/scripts/hooks.js

import {
    reactive } from "vue";

const data = reactive({
   
  schedule: [], // 数据 每次取数据要遍历 麻烦 可能要用到策略模式
  duration: [],
  teacher: [],
  course: [],
  formData: [], // 提交数据可能要用到
});

export function useInitialData() {
   
  function setInitialData({
     schedule, course, duration, teacher }) {
   
    data.duration = duration;
    data.schedule = schedule;
    data.course = course;
    data.teacher = teacher;
  }

  function setSchedule({
     type, result }) {
   }

  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lalaxuan

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值