react 中的 fullcalendar v5 useref() 不包含日历

fullcalendar v5 useref() in react does not contain calendar

我正在使用 fullcalendar 的 React 版本,这是我组件的一部分:

const itMaker = React.useRef();
...
<FullCalendar
  ref={itMaker}
  ...
  customButtons={{
    prev: {
      click: function () {
        console.log('itMaker', itMaker)
        itMaker.current.calendar.incrementDate({ days: -1 });
      }
    }
  }}

useref() 结果在 v4 和 v5 中不同。 v4 中的结果与以下相同:

❌ 这是 fullcalendar v5 中 useref() 的结果:

问题是 calendar 存在于 v4 的 useref() 中,但不存在于 v5 中!!

在 class 基础中这样尝试:

export default class DemoApp extends React.Component {

  calendarRef = React.createRef()

  render() {
    return (
      <FullCalendar ref={this.calendarRef}  />
    )
  }

  someMethod() {
    let calendarApi = this.calendarRef.current.getApi()
    calendarApi.incrementDate({ days: -1 });
  }

}

或在函数库中:

export default function DemoApp () {

  calendarRef = React.useRef()

 
  return (
    <FullCalendar ref={calendarRef}  />
  )
  

  someMethod() {
    let calendarApi = calendarRef.current.getApi()
    calendarApi.incrementDate({ days: -1 });
  }

}