React日历组件fullcalendar使用指北

本文介绍了如何在React项目中使用FullCalendar组件,详细讲解了安装、引入和配置,包括headerToolbar参数、locale、initialView、plugins、events等关键配置项,并提供了完整的代码示例和效果展示。

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

一、使用

参照 官方文档
中文参数文档
中文参数文档2
其他示例

1.安装依赖

npm install --save \
  @fullcalendar/core \
  @fullcalendar/react \
  @fullcalendar/daygrid

2.引入页面

import React from 'react'
import FullCalendar from '@fullcalendar/react'
import dayGridPlugin from '@fullcalendar/daygrid' // a plugin!

export default class DemoApp extends React.Component {
   
  render() {
   
    return (
      <FullCalendar
        plugins={
   [ dayGridPlugin ]}
        initialView="dayGridMonth"
      />
    )
  }
}

3.常用参数说明

headerToolbar:用于定义日历头部的按钮和标题
示例:

{
   
    left:   'title',
    center: '',
    right:  'today prev,next'
}

header置为false,则不会显示头部内容。
值是字符串类型的,使用逗号或者空格分隔开,区别在于:空格分隔,按钮之间有间隙;逗号分隔,按钮之间没有间隙,即紧邻。字符串的值可以使用下面的:
title:包含当前月/周/日内容
prev:按钮,用于切换到上一 月/周/日
next: 按钮,用于切换到下一 月/周/日
prevYear:按钮,用于切换到上一年
nextYear :按钮,用于切换到下一年
today:按钮,返回当前月/周/日
[a View Name]:用于切换到指定View
如果为这些属性指定一个空字符串,则不会显示任何内容。

locale:自定义语言和本地化选项。字符串,默认是"en"。
使用需引入

import locale from '@fullcalendar/core/locales/zh-cn';

initialView:初始视图
包括dayGridMonth, dayGridWeek, dayGridDay, dayGrid 视图

plugins:提供视图插件

views:自定义视图

firstDay:设置一周中显示的第一天是哪天,周日是0,周一是1,类推

contentHeight:设置日历主体内容的高度,不包括header部分,默认未设置,高度根据aspectRatio值自适应

weekMode:在月视图里显示周的模式,因为每月周数可能不同,所以月视图高度不一定。fixed:固定显示6周高,日历高度保持不变liquid:不固定周数,高度随周数变化variable:不固定周数,但高度固定

event
events(Object):事件对象,用来存储一个日历事件信息的标准对象,只有title和start是必须的
event属性:
title:必须,事件在日历上显示的title
id:可选,事件唯一标识,重复的事件具有相同的id
allDay:可选,true or false,是否是全天事件。
start:必须,事件的开始时间。
end:可选,结束时间。
url:可选,当指定后,事件被点击将打开对应url。
className:指定事件的样式。
editable:事件是否可编辑,可编辑是指可以移动, 改变大小等。
source:指向次event的eventsource对象。
color:背景和边框颜色。
backgroundColor:背景颜色。
borderColor:边框颜色。
textColor:文本颜色。

datesSet
datesSet(callback):视图变化后的回调,切换月份年份也会触发

完整代码
jsx代码

<FullCalendar
          // ref={withFullCalendar}
          plugins={
   [dayGridPlugin]}
          locale={
   locale} // 中文插件
          initialView="dayGridMonth"
          headerToolbar={
   {
   
            left: null,
            center: 'prev,title,next',
            right: null
          }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值