Files
SCM-Manager/scm-ui/ui-components/src/navigation/PrimaryNavigationLink.tsx

29 lines
686 B
TypeScript
Raw Normal View History

import * as React from "react";
import { Route, Link } from "react-router-dom";
type Props = {
to: string;
label: string;
match?: string;
activeOnlyWhenExact?: boolean;
};
class PrimaryNavigationLink extends React.Component<Props> {
renderLink = (route: any) => {
const { to, label } = this.props;
return (
<li className={route.match ? "is-active" : ""}>
<Link to={to}>{label}</Link>
</li>
);
};
render() {
const { to, match, activeOnlyWhenExact } = this.props;
const path = match ? match : to;
2019-10-21 10:57:56 +02:00
return <Route path={path} exact={activeOnlyWhenExact} children={this.renderLink} />;
}
}
export default PrimaryNavigationLink;