我试图使用React的activeClassName
属性来为我的导航设置样式。目前它按预期工作,但是有一个问题 - 我的第一个导航链接指向根路由(/)。因此,即使在另一个URL上,它也会将该URL(例如/skills)和根标记为活动状态(因此2个菜单项都被样式化)。
是否有简单的解决方法?我应该将根路由定义为其他内容(例如/home)吗?
我的页头:
import React, { PropTypes } from 'react';
import { Link, IndexLink } from 'react-router';
const Header = () => {
return (
<div className="header">
<div className="headerImage"></div>
<ul className="headerNav">
<li className="headerNavLink"><Link to="/" activeClassName="activeLink">introduction</Link></li>
<li className="headerNavLink"><Link to="/skills" activeClassName="activeLink">skills</Link></li>
<li className="headerNavLink"><Link to="/portfolio" activeClassName="activeLink">portfolio</Link></li>
</ul>
</div>
);
};
export default Header;
路由文件:routes.js
import React from 'react';
import { Route, IndexRoute } from 'react-router';
//Import app
import App from './components/App';
//Import pages
import IntroductionPage from './components/introduction/IntroductionPage';
import SkillsPage from './components/skills/SkillsPage';
import PortfolioPage from './components/portfolio/PortfolioPage';
//Define routes
export default (
<Route path="/" component={App}>
<IndexRoute component={IntroductionPage} />
<Route path="skills" component={SkillsPage} />
<Route path="portfolio" component={PortfolioPage} />
</Route>
);
为了澄清,当我在另一个路线上时,我希望我的主页路线不处于活动状态。
我做错了什么?
谢谢