Getting Started with the KendoReact TreeList
This guide provides essential information about using the KendoReact TreeList package—you will learn how to install the TreeList package, add a TreeList component to your project, style the component, and activate your license.
After completing this guide, you will be able to reproduce the following example.
Setting Up Your React Project
Before you install the KendoReact TreeList, make sure that you have a running React project. The easiest way to set up a React project is to use the Create React App approach that is described in the Get Started with KendoReact article.
Installing the TreeList Package
All KendoReact packages are distributed through npm and offer a similar installation experience. To use the TreeList component, start with the installation of the TreeList npm package and its dependencies. Use Node.js v5.0.0 or later.
npm install --save @progress/kendo-react-treelist @progress/kendo-data-query @progress/kendo-drawing @progress/kendo-date-math @progress/kendo-react-data-tools @progress/kendo-react-dateinputs @progress/kendo-react-dropdowns @progress/kendo-react-inputs @progress/kendo-react-intl @progress/kendo-licensing @progress/kendo-svg-icons
Importing the Component
After installing the package, import the TreeList component in the React App. To enable the sending of messages, also import the Message entity and the TreeListMessageSendEvent.
In the src/App.js
file of your React project, import the TreeList
component from the TreeList package.
// ES2015 module syntax
import { TreeList } from "@progress/kendo-react-treelist";
// CommonJS format
const { TreeList } = require('@progress/kendo-react-treelist');
Using the Component
-
Get the data for the TreeList.
import data from './simple-data';
-
Create the columns for the TreeList.
const columns = [ { field: 'name', title: 'Name', width: '250px', expandable: true }, { field: 'title', title: 'Title'} ];
-
Specify the field's name, which will provide an array representation of the item subitems.
const subItemsField: string = 'employees';
-
Specify the field's name, which will provide a Boolean representation of the expanded state of each item.
const expandField = 'expanded';
-
Add the component's markup to the
src/App.js
file in your project.return ( <TreeList style={{ maxHeight: '510px', overflow: 'auto' }} expandField={expandField} subItemsField={subItemsField} data={data} columns={columns} /> );
-
To style the TreeList, install and import the Default theme, which is one of the three beautiful themes for KendoReact.
6.1. Install the Default theme package.
npm install --save @progress/kendo-theme-default
6.2. Import the CSS file from the package in
src/App.js
. Add this import before your existingApp.css
import.import '@progress/kendo-theme-default/dist/all.css';
-
Build and run the application by typing the following command in the root folder of your project:
npm start
-
Navigate to http://localhost:3000 to see the KendoReact TreeList component on the page.
Activating Your License Key
Using any of the UI components in the KendoReact library requires either a commercial license key or an active trial license key.
Follow the instructions on the KendoReact My License page to activate your trial or commercial license. You can skip this step if your application already contains a KendoReact license file.
Dependencies
The TreeList package requires you to install the following peer dependencies in your application:
Package Name | Description |
---|---|
react 16.8.2* | Contains the functionality necessary to define React components. |
react-dom | Contains the React renderer for the web. |
@progress/kendo-licensing | Contains the internal infrastructure related to licensing. |
@progress/kendo-react-intl | Contains the KendoReact Internationalization package that applies the desired cultures by providing services and pipes for the parsing and formatting of dates and numbers. |
@progress/kendo-data-query | Applies sorting, filtering, grouping, and aggregate data operations. |
@progress/kendo-react-animation | Enables the animations in the KendoReact components. |
@progress/kendo-react-data-tools | Delivers components required to manage and control the data in the application. |
@progress/kendo-react-dateinputs | Contains the KendoReact Date Inputs components that are used to select the date and time for an appointment. |
@progress/kendo-react-dropdowns | Contains the KendoReact Dropdowns, which allows users to choose from a predefined list of options. |
@progress/kendo-react-inputs | Contains the KendoReact Inputs, which the input of data, based on a specific and predefined format. |
@progress/kendo-drawing | Contains the Drawing library, which provides interactive vector graphics. |
@progress/kendo-react-buttons | Contains the KendoReact Buttons library, which provides buttons. |
@progress/kendo-date-math | Contains the logic for working with date objects and timezones. |
@progress/kendo-svg-icons | Contains the KendoReact SVG icons. |
Suggested Links
- Data operations
- Export options
- Advanced implementations
- More settings