Bootstrap Navbarが正常に動作しています。 MenuItemをクリックすると、「アクティブ」として設定されます。しかし、私はこれを望んでいます。たとえば、「ホーム>ステータス> NewStatus」に行くと、MenuItemホームが「アクティブ」になります。私はこのコードで私のブートストラップナビゲーションバーを持っている:React-Router Bootstrap Navbarで親リンクとしてアクティブに設定してください
import React from 'react';
import MenuNavItem from './MenuNavItem.jsx'
export default class Menu extends React.Component {
constructor() {
super();
}
render() {
return (
<nav id="idNavMenu" class="navbar navbar-default" role="navigation">
{/*<a class="navbar-brand" href="/inicio"><img id="idFotoLogotipo" width="200px" src="./assets/images/cabecera_CE.jpg"/></a>*/}
<a class="navbar-brand" href="http://www.upct.es/"><span id="idTextoLogotipo">UPCT</span></a>
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-ex1-collapse">
<span class="sr-only">Menú</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="collapse navbar-collapse navbar-ex1-collapse">
<ul class="nav navbar-nav">
<MenuNavItem to='/alumno/inicio' index={true}>Inicio</MenuNavItem>
<MenuNavItem to='/alumno/nueva_incidencia'>Nueva Incidencia</MenuNavItem>
<MenuNavItem to='/alumno/mis_incidencias'>Mis Incidencias</MenuNavItem>
</ul>
<ul class="nav navbar-nav navbar-right">
<MenuNavItem to=''><span class="glyphicon glyphicon-off"></span> Salir</MenuNavItem>
</ul>
</div>
</nav>
);
}
}
とメニュー・ラッパーアクティブのMenuItemがクリックされたのように設定することができます:
import React from 'react'
import { Link, IndexLink, withRouter } from 'react-router'
export default class NavItem extends React.Component {
constructor() {
super();
}
render() {
const { router, index, to, children, ...props } = this.props;
let isActive = false;
if (router.isActive('./', true) && index) {
isActive = true
} else {
isActive = router.isActive(to)
}
const LinkComponent = index ? IndexLink : Link
return (
<li className={isActive ? 'active' : ''}>
<LinkComponent to={to} {...props}>{children}</LinkComponent>
</li>
);
}
}
NavItem = withRouter(NavItem);
を私のメニューを参照するには、私は'/alumno/inicio/OTHER-ROUTE'
で午前場合、私はしたいですその'Inicio'
は'active'
になります。誰かが私がこれをどうやってできるか知っていますか? (NavBarの親MenuItem - この場合は'Inicio'
- ルートの場合 - '/alumno/inicio/OTHER-ROUTE'
'OTHER-ROUTE'
がNavBar上で定義されていない - アクティブに設定されています)ありがとうございました。
あなたにたくさんありがとうございました!それは働いている!もっと時間があるとき、私はあなたに私が示唆するようにReact-Bootstrapを試みます。ありがとうございました。 – JuMoGar
こんにちは、@ mrinalmech。今日私はこのエラーが発生します。どうなり得るか? (私はここにそれを貼り付けることができないのでaswerに投稿します、長すぎます。ありがとう – JuMoGar
こんにちは、@ mrinalmech、これを読むことができますか?http://stackoverflow.com/questions/43702957/how-could -i-sol-nav-wrapper-of-navbarで、私を助けようとしていますか? – JuMoGar