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.

There are following components included:

  • Navbar / F7Navbar
  • NavLeft / F7NavLeft
  • NavRight / F7NavRight
  • NavTitle / F7NavTitle
  • NavTitleLarge / F7NavTitleLarge
Prop Type Default Description
<Navbar> properties
--- --- --- ---
title string Navbar title
subtitle string Navbar sub title
backLink boolean string Adds back-link with text (if string value is specified)
backLinkUrl string Custom back link URL
backLinkForce boolean false Force page to load and ignore previous page in history
backLinkShowText boolean By default back link text disable for MD theme
sliding boolean true Enables “sliding” effect for nav elements
noShadow boolean false Disable shadow rendering for Material theme
noHairline boolean false Disable navbar bottom thin border (hairline) for iOS theme
hidden boolean false Makes navbar hidden
innerClass string Adds additional class to navbar-inner element
large boolean Enables navbar with large title
transparent boolean Makes navbar transparent. Can be used in addition to large prop to make large navbar transparent.
titleLarge string Navbar large title text. If not specified then will be equal to title prop
<NavLeft> properties
backLink boolean string Adds back-link with text (if string value is specified)
backLinkUrl string Custom back link URL
backLinkForce boolean false Force page to load and ignore previous page in history
backLinkShowText boolean By default back link text disable for MD theme
sliding boolean Enables “sliding” effect. By default inhertis sliding prop of parent Navbar
<NavTitle> properties
title string Specifies element inner title text (affects if there is no child elements)
subtitle string Sub title text
sliding boolean Enables “sliding” effect. By default inhertis sliding prop of parent Navbar
<NavRight> properties
sliding boolean Enables “sliding” effect. By default inhertis sliding prop of parent Navbar
<Navbar> methods
.hide(animate) Hide navbar
.show(animate) Show navbar
.size() Size navbar
Event Description
<Navbar> events
--- ---
backClick clickBack Event will be triggered after click on navbar back link
navbarHide Event will be triggered when Navbar becomes hidden
navbarShow Event will be triggered when Navbar becomes visible
navbarCollapse Event will be triggered when Navbar with large title collapsed (from large navbar to usual navbar)
navbarExpand Event will be triggered when Navbar with large title expanded (from usual navbar to large navbar)
<NavLeft> events
backClick clickBack Event will be triggered after click on navbar back link

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
  • left - element will be inserted in navbar’s left element
  • right - element will be inserted in navbar’s right element
  • title - element will be inserted in navbar’s title element
  • title-large - element will be inserted in navbar’s large title text element
1. <Navbar title="My App">
2. <a href="#" slot="left">Left Link</a>
3. <a href="#" slot="right">Right Link</a>
4. <div slot="before-inner">Before Inner</div>
5. <div slot="after-inner">After Inner</div>
6. <div>Default slot</div>
7. </Navbar>

9. {/* Renders to: */}

11. <div class="navbar">
12. <div class="navbar-bg"></div>
13. <div>Before Inner</div>
14. <div class="navbar-inner">
15. <div class="left">
16. <a href="#">Left Link</a>
17. </div>
18. <div class="title">My App</div>
19. <div class="right">
20. <a href="#">Right Link</a>
21. </div>
22. <div>Default slot</div>
23. </div>
24. <div>After Inner</div>
25. </div>

Examples

Minimal layout

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

7. {/* or */}

9. <Navbar title="My App" backLink="Back">
10. <Link slot="right" icon="icon-bars" panelOpen="right"></Link>
11. </Navbar>

With large title

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

3. {/* with different large title text */}

5. <Navbar title="My App" backLink="Back" large titleLarge="Large Title"></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>

← Messages

Page →