vue日历上每天的日程安排表

本文介绍了如何在Vue应用中结合vue-calendar-component和ElementUI的table组件,实现点击日历选择日期后动态更新表格数据,展示了两个不同日期范围内的事件列表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述

结合了vue-calendar-component和Element UI的table组件。

npm install vue-calendar-component  --registry=https://registry.npmmirror.com

点击一天,切换table数据。
在这里插入图片描述

<template>
    <div>
        <div class="con">
            <Calendar v-on:choseDay="clickDay" v-on:changeMonth="changeDate" v-on:isToday="clickToday"></Calendar>
        </div>

        <el-table
      :data="tableData"
      style="width: 100%">
      <el-table-column
        prop="date"
        label="开始时间"
        width="180">
      </el-table-column>
      <el-table-column
        prop="enddate"
        label="结束时间"
        width="180">
      </el-table-column>
      <el-table-column
        prop="name"
        label="事情"
        width="180">
      </el-table-column>
      <el-table-column
        prop="address"
        label="地址">
      </el-table-column>
    </el-table>
    </div>
</template>

<script>
/* eslint-disable */
import Calendar from 'vue-calendar-component';
export default {
    components: {
        Calendar
    },
    data() {
        return {
            tableData: []
        };
    },
    created() { },
    methods: {
        clickDay(data) {

            if(data=='2024/3/30'){
                this.tableData=[{
            date: '8:00',
            enddate: '9:00',
            name: '请客',
            address: '上海市普陀区金沙江路 1518 弄'
          }, {
            date: '9:00',
            enddate: '10:00',
            name: '出差',
            address: '上海市普陀区金沙江路 1517 弄'
          }, {
            date: '10:00',
            enddate: '11:00',
            name: '给客户打电话',
            address: '上海市普陀区金沙江路 1519 弄'
          }, {
            date: '11:00',
            enddate: '12:00',
            name: '报销车费',
            address: '上海市普陀区金沙江路 1516 弄'
          }];
            }else{
                this.tableData=[{
            date: '8:00',
            enddate: '9:00',
            name: 'go school',
            address: 'American'
          }, {
            date: '9:00',
            enddate: '10:00',
            name: 'eat food',
            address: 'beijing'
          }, {
            date: '10:00',
            enddate: '11:00',
            name: 'play game',
            address: 'nanjing'
          }, {
            date: '11:00',
            enddate: '12:00',
            name: 'watch tv',
            address: 'shanghai'
          }];
            }
        },
        changeDate(data) {
        },
        clickToday(data) {
        }
    },
};
</script>
### 使用 Bootstrap 创建日历排班 Bootstrap 是一种流行的前端框架,它提供了许多工具和组件来快速构建响应式的网页界面。然而,Bootstrap 自身并不直接提供完整的日历功能模块[^1]。为了实现日历排班的功能,通常需要结合其他插件或库,比如 FullCalendar 或者自定义 HTML 和 JavaScript。 以下是通过 Bootstrap 结合 FullCalendar 插件创建日历排班的一个示例: #### 依赖项安装 要使用 FullCalendar,首先需要引入必要的 CSS 和 JS 文件。可以通过 CDN 方式加载这些资源: ```html <link href='https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css' rel='stylesheet'> <script src="https://code.jquery.com/jquery-3.6.0.min.js"></script> <link href='https://cdn.jsdelivr.net/npm/fullcalendar/main.min.css' rel='stylesheet'/> <script src='https://cdn.jsdelivr.net/npm/fullcalendar/main.min.js'></script> ``` #### 基本结构设置 在页面上放置一个容器用于显示日历内容,并为其分配唯一的 ID 属性以便后续初始化操作。 ```html <div class="container mt-5"> <div id='calendar'></div> <!-- 日历的主要区域 --> </div> ``` #### 初始化 FullCalendar 利用 JavaScript 来配置并启动 FullCalendar 的实例化过程。下面是一个简单的例子展示如何定制基本的日历视图以及事件数据源。 ```javascript document.addEventListener('DOMContentLoaded', function() { var calendarEl = document.getElementById('calendar'); var calendar = new FullCalendar.Calendar(calendarEl, { initialView: 'dayGridMonth', headerToolbar: { // 定义顶部导航栏按钮组布局 left: 'prev,next today', center: 'title', right: 'dayGridMonth,timeGridWeek,listWeek' }, events: [ { title: '值班人员A', start: '2023-11-07T14:00:00', end: '2023-11-08T19:00:00'}, { title: '值班人员B', start: '2023-11-10T10:00:00'} ] }); calendar.render(); }); ``` 上述代码片段展示了如何将 FullCalendar 集成到基于 Bootstrap 构建的应用程序中去[^2]。其中 `events` 数组可以动态替换为来自服务器端的数据接口返回的结果集。 #### 进一步优化样式 如果希望进一步调整外观风格使之更贴合整体设计主题,则可通过覆盖默认样式或者编写额外的 SCSS/SASS 规则来进行个性化处理。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值