Navbar React Component

Navbar is a fixed (with Fixed and Through layout types) area at the top of a screen that contains Page title and navigation elements.

Navbar React component represents Navbar component.

Navbar Components

There are following components included:

  • **Navbar** / **F7Navbar**
  • **NavLeft** / **F7NavLeft**
  • **NavRight** / **F7NavRight**
  • **NavTitle** / **F7NavTitle**

Navbar Properties

PropTypeDefaultDescription
<Navbar> properties
innerbooleantrueWhen enabled (by default), it will put all the content within internal navbar-inner element. Disable it only in case you want to put totally custom layout inside
titlestringNavbar title
subtitlestringNavbar sub title
backLinkboolean
string
Adds back-link with text (if string value is specified)
backLinkUrlstringCustom back link URL
slidingbooleantrueEnables “sliding” effect for nav elements
noShadowbooleanfalseDisable shadow rendering for Material theme
noHairlinebooleanfalseDisable navbar bottom thin border (hairline) for iOS theme
hiddenbooleanfalseMakes navbar hidden
innerClassstringAdds additional class to navbar-inner element
<NavLeft> properties
backLinkboolean
string
Adds back-link with text (if string value is specified)
backLinkUrlstringCustom back link URL
slidingbooleanEnables “sliding” effect. By default inhertis sliding prop of parent Navbar
<NavTitle> properties
titlestringSpecifies element inner title text (affects if there is no child elements)
subtitlestringSub title text
slidingbooleanEnables “sliding” effect. By default inhertis sliding prop of parent Navbar
<NavRight> properties
slidingbooleanEnables “sliding” effect. By default inhertis sliding prop of parent Navbar

Navbar Methods

<Navbar> methods
.hide(animate)Hide navbar
.show(animate)Show navbar
.size()Size navbar

Navbar Events

EventDescription
<Navbar> events
backClick
clickBack
Event will be triggered after click on navbar back link
<NavLeft> events
backClick
clickBack
Event will be triggered after click on navbar back link

Navbar Slots

Navbar React component (<Navbar>) has additional slots for custom elements:

  • **default** - element will be inserted as a child of <div class="navbar-inner"> element
  • **before-inner** - element will be inserted right before <div class="navbar-inner"> element
  • **after-inner** - element will be inserted right after <div class="navbar-inner"> element
  1. <Navbar title="My App">
  2. <div slot="before-inner">Before Inner</div>
  3. <div slot="after-inner">After Inner</div>
  4. <div>Default slot</div>
  5. </Navbar>
  6. {/* Renders to: */}
  7. <div class="navbar">
  8. <div>Before Inner</div>
  9. <div class="navbar-inner">
  10. <div class="title">My App</div>
  11. <div>Default slot</div>
  12. </div>
  13. <div>After Inner</div>
  14. </div>

Examples

Minimal layout

  1. <Navbar title="My App"></Navbar>

Minimal layout with back link

  1. <Navbar title="My App" backLink="Back"></Navbar>

Without “sliding” transition effect (affects iOS theme only)

  1. <Navbar title="My App" backLink="Back" sliding="{false}"></Navbar>

With additional right link to open right panel

  1. <Navbar title="My App" backLink="Back">
  2. <NavRight>
  3. <Link icon="icon-bars" panelOpen="right"></Link>
  4. </NavRight>
  5. </Navbar>

All three parts

  1. <Navbar>
  2. <NavLeft backLink="Back"></NavLeft>
  3. <NavTitle>My App</NavTitle>
  4. <NavRight>
  5. <Link icon="icon-bars" panelOpen="right"></Link>
  6. </NavRight>
  7. </Navbar>

Full custom layout

  1. <Navbar>
  2. <NavLeft>
  3. <Link>Left Link</Link>
  4. </NavLeft>
  5. <NavTitle>My App</NavTitle>
  6. <NavRight>
  7. <Link>Right Link</Link>
  8. </NavRight>
  9. </Navbar>