Getting Started with React Calendar
4 Sep 202410 minutes to read
This section explains you the steps required to create a simple Calendar and demonstrate the basic usage of the Calendar component.
To get start quickly with React Calendars, you can check on this video:
Dependencies
The below list of dependencies are required to use the Calendar
component in your application.
|-- @syncfusion/ej2-react-calendars
|-- @syncfusion/ej2-react-base
|-- @syncfusion/ej2-base
|-- @syncfusion/ej2-data
|-- @syncfusion/ej2-calendars
|-- @syncfusion/ej2-inputs
|-- @syncfusion/ej2-splitbuttons
|-- @syncfusion/ej2-lists
|-- @syncfusion/ej2-popups
|-- @syncfusion/ej2-buttons
Installation and configuration
You can use create-react-app
to setup the applications. To install create-react-app
run the following command.
```
npm install -g create-react-app
```
-
To setup basic
React
sample use following commands.``` create-react-app quickstart --scripts-version=react-scripts-ts cd quickstart ```
Adding Syncfusion packages
All the available Essential JS 2 packages are published in npmjs.com
public registry. You can choose the component that you want to install. For this application, we are going to use Calendar
component.
To install Calendar component, use the following command
npm install @syncfusion/ej2-react-calendars –save
Adding Style sheet to the Application
To render the Calendar component, need to import Calendar and its dependent component’s styles as given below in App.css
.
@import "../node_modules/@syncfusion/ej2-base/styles/material.css";
@import "../node_modules/@syncfusion/ej2-buttons/styles/material.css";
@import "../node_modules/@syncfusion/ej2-react-calendars/styles/material.css";
Note: If you want to refer the combined component styles, please make use of our
CRG
(Custom Resource Generator) in your application.
Adding Calendar component to the Application
-
To include the Calendar component in application import the
CalendarComponent
fromej2-react-calendars
package inApp.tsx
. -
Then add the Calendar component as shown in below code example.
[src/App.tsx]
[Class-component]
import { CalendarComponent } from '@syncfusion/ej2-react-calendars';
import * as React from "react";
import './App.css';
export default class App extends React.Component<{}, {}> {
public render() {
return <CalendarComponent id="calendar" />
}
};
[Functional-component]
import { CalendarComponent } from '@syncfusion/ej2-react-calendars';
import * as React from 'react';
import * as ReactDOM from 'react-dom';
function App() {
return <CalendarComponent id="calendar" />;
}
ReactDOM.render(<App />, document.getElementById('element'));
Run the application
Now run the npm start
command in the console, it will run your application and open the browser window.
npm start
The below examples shows the basic calendar component.
[Class-component]
// import the calendarcomponent
import { CalendarComponent } from '@syncfusion/ej2-react-calendars';
import * as React from "react";
import * as ReactDOM from "react-dom";
export default class App extends React.Component {
render() {
return <CalendarComponent id="calendar"/>;
}
}
;
ReactDOM.render(<App />, document.getElementById('element'));
// import the calendarcomponent
import { CalendarComponent } from '@syncfusion/ej2-react-calendars';
import * as React from "react";
import * as ReactDOM from "react-dom";
export default class App extends React.Component<{}, {}> {
public render() {
return <CalendarComponent id="calendar" />
}
};
ReactDOM.render(<App />, document.getElementById('element'));
[Functional-component]
import { CalendarComponent } from '@syncfusion/ej2-react-calendars';
import * as React from 'react';
import * as ReactDOM from 'react-dom';
function App() {
return <CalendarComponent id="calendar"/>;
}
ReactDOM.render(<App />, document.getElementById('element'));
import { CalendarComponent } from '@syncfusion/ej2-react-calendars';
import * as React from 'react';
import * as ReactDOM from 'react-dom';
function App() {
return <CalendarComponent id="calendar" />;
}
ReactDOM.render(<App />, document.getElementById('element'));
Setting the value, min and max dates
The following example demonstrates how to set the value, min and max dates on initializing the Calendar. Here the Calendar allows to select a date within a range from 9th to 15th in a month of May 2017. To know more about range restriction in Calendar, please refer this page.
[Class-component]
// import the calendarcomponent
import { CalendarComponent } from '@syncfusion/ej2-react-calendars';
import * as React from "react";
import * as ReactDOM from "react-dom";
export default class App extends React.Component {
//initialize the value, min and max
dateValue = new Date("05/11/2017");
minDate = new Date("05/09/2017");
maxDate = new Date("05/15/2017");
render() {
return <CalendarComponent id="calendar" value={this.dateValue} min={this.minDate} max={this.maxDate}/>;
}
}
;
ReactDOM.render(<App />, document.getElementById('element'));
// import the calendarcomponent
import { CalendarComponent} from '@syncfusion/ej2-react-calendars';
import * as React from "react";
import * as ReactDOM from "react-dom";
export default class App extends React.Component<{}, {}> {
//initialize the value, min and max
private dateValue: Date = new Date("05/11/2017");
private minDate: Date = new Date("05/09/2017");
private maxDate: Date = new Date("05/15/2017");
public render() {
return <CalendarComponent id="calendar" value={this.dateValue} min={this.minDate} max={this.maxDate} />
}
};
ReactDOM.render(<App />, document.getElementById('element'));
[Functional-component]
import { CalendarComponent } from '@syncfusion/ej2-react-calendars';
import * as React from "react";
import * as ReactDOM from "react-dom";
function App() {
//initialize the value, min and max
const dateValue = new Date("05/11/2017");
const minDate = new Date("05/09/2017");
const maxDate = new Date("05/15/2017");
return <CalendarComponent id="calendar" value={dateValue} min={minDate} max={maxDate}/>;
}
;
ReactDOM.render(<App />, document.getElementById('element'));
import { CalendarComponent} from '@syncfusion/ej2-react-calendars';
import * as React from "react";
import * as ReactDOM from "react-dom";
function App() {
//initialize the value, min and max
const dateValue: Date = new Date("05/11/2017");
const minDate: Date = new Date("05/09/2017");
const maxDate: Date = new Date("05/15/2017");
return <CalendarComponent id="calendar" value={dateValue} min={minDate} max={maxDate} />
};
ReactDOM.render(<App />, document.getElementById('element'));
See Also
- Select multiple dates in the Calendar
- Render Calendar with specific culture
- How to change the initial view of the Calendar
- Render Calendar with week numbers
- Show other month dates
NOTE
You can refer to our React Calendar feature tour page for its groundbreaking feature representations. You can also explore our React Calendar example to knows how to present and manipulate data.