Getting Started with the KendoReact Dialogs
This guide provides essential information about using the KendoReact Dialogs package—you will learn how to install the package, add Dialogs to your project, style the components, and activate your license. The steps demonstrated in this guide are applicable to all KendoReact Dialogs.
After completing this guide, you will be able to reproduce the following example.
Setting Up Your React Project
Before you install the KendoReact Dialogs, 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 Components
All KendoReact packages are distributed through npm and offer a similar installation experience. To use any of the Dialogs, start with the installation of the npm package and its dependencies. Use Node.js v5.0.0 or later.
Navigate to the root folder of your React project and run the following command:
npm install --save @progress/kendo-react-dialogs @progress/kendo-licensing @progress/kendo-svg-icons
Importing the Components
After installing the Dialogs package, import the desired components in the React App. This guide shows how to add the Dialog.
In the App component file of your React project (for example, src/App.js
), add the following code:
// ES2015 module syntax
import { Dialog } from '@progress/kendo-react-dialogs';
// CommonJS format
const { Dialog } = require('@progress/kendo-react-dialogs');
If your project requires more Dialogs, you can import them too. The Dialogs package provides the following components:
- Dialog
- Window
Using the Components
-
After installing the Dialogs package and importing the components, add the Dialog's tags to the App component file of your React project (for example,
src/App.js
).{visible && <Dialog title={"Please confirm"} onClose={toggleDialog}> <p style={{ margin: "25px", textAlign: "center" }}>Are you sure you want to continue?</p> <DialogActionsBar> <button className="k-button k-button-md k-rounded-md k-button-solid k-button-solid-base" onClick={toggleDialog}>No</button> <button className="k-button k-button-md k-rounded-md k-button-solid k-button-solid-base" onClick={toggleDialog}>Yes</button> </DialogActionsBar> </Dialog>}
Create a state variable to control when the Dialog is open or closed.
```js
const [visible, setVisible] = React.useState<boolean>(true);
```
-
Add a button that will open the Dialog.
<button className="k-button k-button-md k-rounded-md k-button-solid k-button-solid-base" onClick={toggleDialog}>Open Dialog</button>
-
Create a function that will toggle the Dialog visibility.
const toggleDialog = () => { setVisible(!visible); }
-
To style the Dialog, install and import the Default theme, which is one of the three beautiful themes for KendoReact.
5.1. Install the Default theme package.
npm install --save @progress/kendo-theme-default
5.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 Dialog component on the page.
Now try to add another component from the Dialogs package yourself. The procedures for installing, importing, and using the Dialogs components are identical for all components in the package.
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 Dialogs 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-svg-icons | Contains the KendoReact SVG icons. |