Getting Started
19 Dec 20246 minutes to read
This section explains how to create a simple Timeline and configure its available functionalities in the React environment.
Dependencies
The following list of dependencies is required to use the Timeline component in your application.
|-- @syncfusion/ej2-react-layouts
|-- @syncfusion/ej2-base
|-- @syncfusion/ej2-layouts
|-- @syncfusion/ej2-react-base
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
Start a new project using the create-react-app command as follows
‘react-scripts-ts’ is used for creating React app with typescript.
Adding Syncfusion packages
All the available Essential JS 2 packages are published in npmjs.com public registry.
To install Timeline
component, use the following command
npm install @syncfusion/ej2-react-layouts --save
Adding CSS Reference
Import the Timeline component’s required CSS references as follows in src/App.css
.
@import "../../node_modules/@syncfusion/ej2-base/styles/material.css";
@import "../../node_modules/@syncfusion/ej2-layouts/styles/material.css";
Adding Timeline component to the application
To include the Timeline component in your application, import the TimelineComponent
from ej2-react-layouts
package in the App.tsx
.
To define each item, you can use the ItemDirective
tag inside the ItemsDirective
tag as shown in below code example.
import { TimelineComponent, ItemsDirective, ItemDirective } from '@syncfusion/ej2-react-layouts';
import * as React from "react";
import * as ReactDOM from "react-dom";
import "./App.css";
function App() {
return (
<div id='timeline' style={{ height: "350px" }}>
<TimelineComponent>
<ItemsDirective>
<ItemDirective />
<ItemDirective />
<ItemDirective />
<ItemDirective />
</ItemsDirective>
</TimelineComponent>
</div>
);
}
const root = ReactDOM.createRoot(document.getElementById("element"));
root.render(<App />);
Running the application
Run the application in the browser using the following command:
npm start
The following example shows a basic Timeline component.
import * as React from "react";
import * as ReactDom from "react-dom";
import { TimelineComponent, ItemsDirective, ItemDirective } from '@syncfusion/ej2-react-layouts';
function App() {
return (
<div id='timeline' style={{ height: "350px" }}>
<TimelineComponent>
<ItemsDirective>
<ItemDirective />
<ItemDirective />
<ItemDirective />
<ItemDirective />
</ItemsDirective>
</TimelineComponent>
</div>
);
}
export default App;
ReactDom.render(<App />, document.getElementById("element"));
import * as React from "react";
import * as ReactDom from "react-dom";
import { TimelineComponent, ItemsDirective, ItemDirective } from '@syncfusion/ej2-react-layouts';
function App() {
return (
<div id='timeline' style={{ height: "320px" }}>
<TimelineComponent>
<ItemsDirective>
<ItemDirective />
<ItemDirective />
<ItemDirective />
<ItemDirective />
</ItemsDirective>
</TimelineComponent>
</div>
);
}
export default App;
ReactDom.render(<App />, document.getElementById("element"));
<!DOCTYPE html>
<html lang="en">
<head>
<title>Syncfusion EJ2 React Timeline Sample</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="description" content="Essential JS 2 for React Components" />
<meta name="author" content="Syncfusion" />
<link href="https://cdn.syncfusion.com/ej2/28.1.33/ej2-base/styles/material.css" rel="stylesheet" />
<link href="https://cdn.syncfusion.com/ej2/28.1.33/ej2-layouts/styles/material.css" rel="stylesheet" />
<link href="index.css" rel="stylesheet" />
<script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
<script src="systemjs.config.js"></script>
<script src="https://cdn.syncfusion.com/ej2/syncfusion-helper.js" type ="text/javascript"></script>
</head>
<body>
<div id='element' style="margin-top: 30px;">
<div id='loader'>Loading....</div>
</div>
</body>
</html>