Explore the Navbar menu of Nubra UI.
Add data-layout="navbar" data-layout-style="default"
in wrapper class and use below snippet Horizontal light menu.
import React, { useState } from 'react'
import { Container, Nav } from 'react-bootstrap'
import SimpleBar from 'simplebar-react'
import { navigationConfig } from './navigationConfig'
import NubraBadge from '../../../../components/@nubra-badge/@nubra-badge'
//Image
import avatar12 from '../../../../Assets/dist/img/avatar12.jpg'
const BasicExample = () => {
const [activeMenu, setActiveMenu] = useState();
const handleClick = (menuName) => {
setActiveMenu(menuName);
}
return (
<nav className="hk-navbar navbar navbar-expand-xl navbar-light position-relative start-0 top-0">
<Container fluid>
<div className="nav-start-wrap flex-fill">
<div className="menu-header">
<span className="d-flex align-items-center">
<span className="d-flex navbar-brand me-2">
Brand
</span>
</span>
</div>
<div className="hk-menu hk-menu-navbar-example position-relative start-0 top-0 border-0">
<SimpleBar className="nicescroll-bar">
<div className="menu-content-wrap">
<Container fluid className="menu-group">
<Nav as="ul" className="navbar-nav flex-column">
{
MenuList.map((routes, index) => (
<React.Fragment key={index} >
{
routes.contents.map((menus, ind) => (
// <Nav.Item as='li' key={ind} className={classNames({ "active": useRouteMatch(menus.path) })} >
<Nav.Item as='li' key={ind} >
<Nav.Link data-bs-toggle="collapse" data-bs-target={`#${menus.id}`}>
<span className={classNames("nav-icon-wrap", { "position-relative": menus.iconBadge })}>
{menus.iconBadge && menus.iconBadge}
<span className="svg-icon">
{menus.icon}
</span>
</span>
<span className={classNames("nav-link-text", { "position-relative": menus.badgeIndicator })} >
{menus.name}
{menus.badgeIndicator && menus.badgeIndicator}
</span>
{menus.badge && menus.badge}
</Nav.Link>
<ul id={menus.id} className={classNames("nav flex-column nav-children", { "collapse": activeMenu !== menus.name })}>
<li className="nav-item">
<ul className="nav flex-column">
{menus.childrens.map((subMenu, indx) => (
subMenu.childrens
?
<li className="nav-item" key={indx} >
<Nav.Link as={Link} to="#" className="nav-link" data-bs-toggle="collapse" data-bs-target={`#${subMenu.id}`}>
<span className="nav-link-text">
{subMenu.name}
</span>
</Nav.Link>
<ul id={subMenu.id} className="nav flex-column collapse nav-children">
<li className="nav-item">
<ul className="nav flex-column">
{subMenu.childrens.map((childrenPath, i) => (
<li className="nav-item" key={i}>
<Nav.Link as={Link} to={childrenPath.path} onClick={handleClick}>
<span className="nav-link-text">
{childrenPath.name}
</span>
</Nav.Link>
</li>
))}
</ul>
</li>
</ul>
</li>
:
<li className="nav-item" key={indx}>
<Nav.Link as={Link} to={subMenu.path} onClick={handleClick}>
<span className="nav-link-text">
{subMenu.name}
</span>
</Nav.Link>
</li>
))}
</ul>
</li>
</ul>
</Nav.Item>
))
}
</React.Fragment>
))
}
</Nav>
</Container>
</div>
</SimpleBar>
</div>
</div>
<div className="nav-end-wrap">
<Nav className="navbar-nav flex-row">
<Nav.Item>
<Link to="#" className="btn btn-icon btn-rounded btn-flush-dark flush-soft-hover">
<span className="icon">
<span className="feather-icon">
<Icons.Moon />
</span>
</span>
</Link>
</Nav.Item>
<Nav.Item>
<Link to="#" className="btn btn-icon btn-rounded btn-flush-dark flush-soft-hover">
<span className="icon">
<span className=" position-relative">
<span className="feather-icon">
<Icons.Inbox />
</span>
<NubraBadge bg="primary" size="sm" soft pill className="position-top-end-overflow-1" >4</NubraBadge>
</span>
</span>
</Link>
</Nav.Item>
<Nav.Item>
<Dropdown className="ps-2">
<Dropdown.Toggle as={Link} to="#" className="no-caret">
<div className="avatar avatar-rounded avatar-sm">
<img src={avatar12} alt="user" className="avatar-img" />
</div>
</Dropdown.Toggle>
</Dropdown>
</Nav.Item>
</Nav>
</div>
</Container>
</nav>
)
}
export default BasicExample;
import * as Icons from "react-feather";
import NubraBadge from "../../../../components/@nubra-badge/@nubra-badge";
const navigationConfig = [
{
group: '',
menu: [
{
id: 'nav_menu_id',
name: 'Navigation 1',
icon: <Icons.GitPullRequest />, //You can use any other icons
badge: <NubraBadge bg="pink" soft className="ms-2" >Trend</NubraBadge>,
path: 'nav_path',
submenu: []
},
]
}
]
Add data-layout="horizontal" data-layout-style="default" data-menu="dark"
in wrapper class and use below snippet Horizontal dark menu.
import React, { useState } from 'react'
import { Container, Nav } from 'react-bootstrap'
import SimpleBar from 'simplebar-react'
import { navigationConfig } from './navigationConfig'
import NubraBadge from '../../../../components/@nubra-badge/@nubra-badge'
//Image
import avatar12 from '../../../../Assets/dist/img/avatar12.jpg'
const DarkMenu = () => {
const [activeMenu, setActiveMenu] = useState();
const handleClick = (menuName) => {
setActiveMenu(menuName);
}
return (
<nav className="hk-navbar navbar navbar-expand-xl navbar-dark position-relative start-0 top-0">
<Container fluid>
<div className="nav-start-wrap flex-fill">
<div className="menu-header">
<span className="d-flex align-items-center">
<span className="d-flex navbar-brand me-2">
Brand
</span>
</span>
</div>
<div className="hk-menu hk-menu-navbar-example position-relative start-0 top-0 border-0">
<SimpleBar className="nicescroll-bar">
<div className="menu-content-wrap">
<Container fluid className="menu-group">
<Nav as="ul" className="navbar-nav flex-column">
{
MenuList.map((routes, index) => (
<React.Fragment key={index} >
{
routes.contents.map((menus, ind) => (
// <Nav.Item as='li' key={ind} className={classNames({ "active": useRouteMatch(menus.path) })} >
<Nav.Item as='li' key={ind} >
<Nav.Link data-bs-toggle="collapse" data-bs-target={`#${menus.id}`}>
<span className={classNames("nav-icon-wrap", { "position-relative": menus.iconBadge })}>
{menus.iconBadge && menus.iconBadge}
<span className="svg-icon">
{menus.icon}
</span>
</span>
<span className={classNames("nav-link-text", { "position-relative": menus.badgeIndicator })} >
{menus.name}
{menus.badgeIndicator && menus.badgeIndicator}
</span>
{menus.badge && menus.badge}
</Nav.Link>
<ul id={menus.id} className={classNames("nav flex-column nav-children", { "collapse": activeMenu !== menus.name })}>
<li className="nav-item">
<ul className="nav flex-column">
{menus.childrens.map((subMenu, indx) => (
subMenu.childrens
?
<li className="nav-item" key={indx} >
<Nav.Link as={Link} to="#" className="nav-link" data-bs-toggle="collapse" data-bs-target={`#${subMenu.id}`}>
<span className="nav-link-text">
{subMenu.name}
</span>
</Nav.Link>
<ul id={subMenu.id} className="nav flex-column collapse nav-children">
<li className="nav-item">
<ul className="nav flex-column">
{subMenu.childrens.map((childrenPath, i) => (
<li className="nav-item" key={i}>
<Nav.Link as={Link} to={childrenPath.path} onClick={handleClick}>
<span className="nav-link-text">
{childrenPath.name}
</span>
</Nav.Link>
</li>
))}
</ul>
</li>
</ul>
</li>
:
<li className="nav-item" key={indx}>
<Nav.Link as={Link} to={subMenu.path} onClick={handleClick}>
<span className="nav-link-text">
{subMenu.name}
</span>
</Nav.Link>
</li>
))}
</ul>
</li>
</ul>
</Nav.Item>
))
}
</React.Fragment>
))
}
</Nav>
</Container>
</div>
</SimpleBar>
</div>
</div>
<div className="nav-end-wrap">
<Nav className="navbar-nav flex-row">
<Nav.Item>
<Link to="#" className="btn btn-icon btn-rounded btn-flush-dark flush-soft-hover">
<span className="icon">
<span className="feather-icon">
<Icons.Moon />
</span>
</span>
</Link>
</Nav.Item>
<Nav.Item>
<Link to="#" className="btn btn-icon btn-rounded btn-flush-dark flush-soft-hover">
<span className="icon">
<span className=" position-relative">
<span className="feather-icon">
<Icons.Inbox />
</span>
<NubraBadge bg="primary" size="sm" soft pill className="position-top-end-overflow-1" >4</NubraBadge>
</span>
</span>
</Link>
</Nav.Item>
<Nav.Item>
<Dropdown className="ps-2">
<Dropdown.Toggle as={Link} to="#" className="no-caret">
<div className="avatar avatar-rounded avatar-sm">
<img src={avatar12} alt="user" className="avatar-img" />
</div>
</Dropdown.Toggle>
</Dropdown>
</Nav.Item>
</Nav>
</div>
</Container>
</nav>
)
}
export default DarkMenu;
import * as Icons from "react-feather";
import NubraBadge from "../../../../components/@nubra-badge/@nubra-badge";
const navigationConfig = [
{
group: '',
menu: [
{
id: 'nav_menu_id',
name: 'Navigation 1',
icon: <Icons.GitPullRequest />, //You can use any other icons
badge: <NubraBadge bg="pink" soft className="ms-2" >Trend</NubraBadge>,
path: 'nav_path',
submenu: []
},
]
}
]