Boa tarde galera,
Estou com uma dificuldade em como resolver o seguinte problema.
tenho o arquivo Main onde possuo as rotas:
//Main.js
import React from 'react';
import Menu from './FinanceiroMenu';
import Banco from './FinanceiroBanco';
import Pagamento from './FinanceiroFormaPagamento';
import Navbar from './componentes/NavbarPage2';
const Main = () => {
return <main>
<Navbar
color="teal lighten-1"
></Navbar>
<Switch>
<Route exact path={'/front' + Versao + '/menu'} component={Menu} />
<Route exact path={'/front' + Versao + '/banco'} component={Banco} />
<Route exact path={'/front' + Versao + '/pagamento'} component={Pagamento} />
</Switch>
</main>
};
export default Main;
No arquivo Main.js deixei a Navbar pois assim ela ficava fixa sem ser recarregada quando era feito a troca de pagina.
//NavbarPage2.js
//importes e metodos
<div>
<Router>
<Navbar className="p-0 pl-3 fixed-top" color={this.props.color} dark expand="md" scrolling>
<NavbarBrand className="d-lg-none" href="">
{button1}
</NavbarBrand>
<NavbarNav right>
<NavItem>
<h3 id="headerNavbar" className="white-text">{this.props.tituloHeader}</h3>
</NavItem>
</NavbarNav>
<NavbarNav right>
<NavItem>
<Dropdown isOpen={this.state.dropdownOpenNavbar} toggle={this.toggleNavbar}>
<DropdownToggle nav caret>Módulo</DropdownToggle>
<DropdownMenu>
<DropdownItem href="#">Financeiro</DropdownItem>
<DropdownItem href="#">Fiscal</DropdownItem>
</DropdownMenu>
</Dropdown>
</NavItem>
<NavItem className="d-none d-lg-block">
<NavLink to="#"><Fa icon="user" size="1px" />Sair</NavLink>
</NavItem>
</NavbarNav>
</Navbar>
</Router>
</div>
O problema é que quando o usuário esta ná pagina "Bancos" por exemplo eu precisaria passar o valor de
{this.props.tituloHeader}
para "Banco" e quando estiver no Menu para "Menu".
Como posso passar o valor do titulo Header ?
Eu consigo fazer se fosse uma Navbar por pagina, por exemplo na pagina Banco.js ficaria assim:
return(
<div>
<Navbar
tituloHeader="Banco"
>
</Navbar>
</div>
);
Mas como posso passar a propriedade para a Navbar se ela é chamada e renderizada no arquivo Main.js e não no arquivo Banco.js, Menu.js e etc...