Search results

Getting started with React AppBar component

02 Dec 2022 / 2 minutes to read

This section explains how to create a simple AppBar, and configure its available functionalities in React.

Dependencies

The following list of dependencies are required to use the AppBar component in your application.

Copied to clipboard
|-- @syncfusion/ej2-react-navigations
    |-- @syncfusion/ej2-react-base
    |-- @syncfusion/ej2-navigations
        |-- @syncfusion/ej2-base

Setup your development environment

You can use Create-react-app to setup the applications.

To install create-react-app run the following command.

Copied to clipboard
npm install -g create-react-app

Start a new project using create-react-app command as follows

Copied to clipboard
create-react-app quickstart --scripts-version=react-scripts-ts
cd quickstart
Copied to clipboard
create-react-app quickstart
cd quickstart

‘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 AppBar component, use the following command

Copied to clipboard
npm install @syncfusion/ej2-react-navigations --save

The above command installs AppBar dependencies which are required to render the component in the React environment.

Adding Style sheet to the Application

Add AppBar component’s styles as given below in App.css.

Copied to clipboard
@import "../node_modules/@syncfusion/ej2-base/styles/material.css";
@import "../node_modules/@syncfusion/ej2-navigations/styles/material.css";

Add AppBar to the project

Now, you can create AppBar component in the application. Add AppBar component in src/App.tsx file using the following code snippet.

Copied to clipboard
import { AppBarComponent } from "@syncfusion/ej2-react-navigations";
import { ButtonComponent } from '@syncfusion/ej2-react-buttons';
import * as React from "react";

class App extends React.Component<{}, {}> {
  public render() {
    return (
      <div className='control-container'>
        <AppBarComponent colorMode="Primary">
          <ButtonComponent cssClass='e-inherit menu' iconCss='e-icons e-menu'></ButtonComponent>
          <span className="regular">React AppBar</span>
          <div className="e-appbar-spacer"></div>
          <ButtonComponent cssClass='e-inherit login'>FREE TRIAL</ButtonComponent>
        </AppBarComponent>
      </div>
    );
  }
}
Copied to clipboard
import { AppBarComponent } from "@syncfusion/ej2-react-navigations";
import { ButtonComponent } from '@syncfusion/ej2-react-buttons';
import * as React from "react";
class App extends React.Component {
    render() {
        return (<div className='control-container'>
        <AppBarComponent colorMode="Primary">
          <ButtonComponent cssClass='e-inherit menu' iconCss='e-icons e-menu'></ButtonComponent>
          <span className="regular">React AppBar</span>
          <div className="e-appbar-spacer"></div>
          <ButtonComponent cssClass='e-inherit login'>FREE TRIAL</ButtonComponent>
        </AppBarComponent>
      </div>);
    }
}

Run the application

Run the application in the browser using the following command:

Copied to clipboard
npm start

The following example shows a basic AppBar component.

Source
Preview
index.jsx
index.html
index.tsx
Copied to clipboard
import { AppBarComponent } from "@syncfusion/ej2-react-navigations";
import { ButtonComponent } from '@syncfusion/ej2-react-buttons';
import * as React from "react";
import * as ReactDom from "react-dom";
class App extends React.Component {
    render() {
        return (<div className='control-container'>
        <AppBarComponent colorMode="Primary">
          <ButtonComponent cssClass='e-inherit' iconCss='e-icons e-menu'></ButtonComponent>
          <span className="regular" style={{ margin: '0 5px' }}>React AppBar</span>
          <div className="e-appbar-spacer"></div>
          <ButtonComponent cssClass='e-inherit'>FREE TRIAL</ButtonComponent>
        </AppBarComponent>
      </div>);
    }
}
ReactDom.render(<App />, document.getElementById("element"));
Copied to clipboard
<!DOCTYPE html>
<html lang="en">

<head>
    <title>Syncfusion React AppBar</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="//cdn.syncfusion.com/ej2/20.3.56/ej2-base/styles/material.css" rel="stylesheet" />
    <link href="//cdn.syncfusion.com/ej2/20.3.56/ej2-buttons/styles/material.css" rel="stylesheet" />
    <link href="//cdn.syncfusion.com/ej2/20.3.56/ej2-navigations/styles/material.css" rel="stylesheet" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/systemjs/0.19.38/system.js"></script>
    <script src="systemjs.config.js"></script>
</head>

<body>
    <div id='element'>
        <div id='loader'>Loading....</div>
    </div>
</body>

</html>
Copied to clipboard
import { AppBarComponent } from "@syncfusion/ej2-react-navigations";
import { ButtonComponent } from '@syncfusion/ej2-react-buttons';
import * as React from "react";
import * as ReactDom from "react-dom";

class App extends React.Component<{}, {}> {
  public render() {
    return (
      <div className='control-container'>
        <AppBarComponent colorMode="Primary">
          <ButtonComponent cssClass='e-inherit' iconCss='e-icons e-menu'></ButtonComponent>
          <span className="regular" style={{ margin: '0 5px' }}>React AppBar</span>
          <div className="e-appbar-spacer"></div>
          <ButtonComponent cssClass='e-inherit'>FREE TRIAL</ButtonComponent>
        </AppBarComponent>
      </div>
    );
  }
}

ReactDom.render(<App />, document.getElementById("element"));