Open In App

ReactJS Evergreen Tab Component

Improve
Improve
Like Article
Like
Save
Share
Report

React Evergreen is a popular front-end library with a set of React components for building beautiful products as this library is flexible, sensible defaults, and User friendly. Tab Component allows the user to switch between components present in given different tabs. It is used for organizing our content in logical groups. We can use the following approach in ReactJS to use the Evergreen Tab Component.

SideBarTab Props: This does not accept any props.

Tab Props:

  • onSelect: It is a callback function that is triggered when the tab is selected.
  • isSelected: The tab is selected when this is set to true.
  • appearance: It is used to denote the appearance of the tab.
  • direction: It is used to denote the directionality of the tab.  
  • className: It is used to denote the class name passed to the Tab. 

TabNavigation Props: This does not accept any props.

Tablist Props: This does not accept any props.

Creating React Application And Installing Module:

  • Step 1: Create a React application using the following command:

    npx create-react-app foldername
  • Step 2: After creating your project folder i.e. foldername, move to it using the following command:

    cd foldername
  • Step 3: After creating the ReactJS application, Install the required module using the following command:

    npm install evergreen-ui

Project Structure: It will look like the following.

Project Structure

Example: Now write down the following code in the App.js file. Here, App is our default component where we have written our code.

App.js




import React from 'react'
import { Pane, Tab, Tablist } from 'evergreen-ui'
  
export default function App() {
  
  // State for Selected Index
  const [indexSelected, setIndexSelected] = React.useState(0)
  
  // Tabs Heading Array
  const [tabsHeading] = React.useState(['Tab 1', 'Tab 2', 'Tab 3'])
  
  // Tabs Content Array
  const [tabsContent] = React.useState(['Content of Tab 1',
    'Content of Tab 2', 'Content of Tab 3'])
  
  return (
    <div style={{
      display: 'block', width: 700, paddingLeft: 30
    }}>
      <h4>ReactJS Evergreen Tab Component</h4>
      <Pane height={120}>
        <Tablist marginBottom={20} >
          {tabsHeading.map((tab, index) => (
            <Tab
              key={tab}
              isSelected={index === indexSelected}
              onSelect={() => setIndexSelected(index)}
            >{tab}</Tab>
          ))}
        </Tablist>
        <Pane background="lightblue" flex="1">
          {tabsContent.map((tab, index) => (
            <Pane
              role="tabpanel"
              key={tab}
              display={index === indexSelected ? 'block' : 'none'}
            >{tab}</Pane>
          ))}
        </Pane>
      </Pane>
    </div>
  );
}


Step to Run Application: Run the application using the following command from the root directory of the project:

npm start

Output: Now open your browser and go to http://localhost:3000/, you will see the following output:

Reference: https://evergreen.segment.com/components/tabs



Last Updated : 14 Jun, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads