Moh*_*eza 7 javascript fullcalendar reactjs
我正在使用 fullcalendar 的 React 版本,这是我组件的一部分:
\nconst itMaker = React.useRef();\n...\n<FullCalendar\n ref={itMaker}\n ...\n customButtons={{\n prev: {\n click: function () {\n console.log(\'itMaker\', itMaker)\n itMaker.current.calendar.incrementDate({ days: -1 });\n }\n }\n }}\nRun Code Online (Sandbox Code Playgroud)\nuseref()v4 和 v5 的结果不同。v4 中的结果与以下相同:

useref()\xe2\x9d\x8c 这是fullcalendar v5的结果:

问题是v4中calendar存在useref()但v5中不存在!
在类基中尝试这样:
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 });
}
}
Run Code Online (Sandbox Code Playgroud)
或在函数库中:
export default function DemoApp () {
calendarRef = React.useRef()
return (
<FullCalendar ref={calendarRef} />
)
someMethod() {
let calendarApi = calendarRef.current.getApi()
calendarApi.incrementDate({ days: -1 });
}
}
Run Code Online (Sandbox Code Playgroud)