Files
arthurdanjou.fr/components/header/activelink.js
Arthur DANJOU c7b6e39498 Main 🏠, About 🧑 & Env 🌲 pages done 🚀
Footer & Header too
2020-06-01 21:17:23 +02:00

18 lines
580 B
JavaScript

import { withRouter } from 'next/router'
import Link from 'next/link'
import React, { Children } from 'react'
const ActiveLink = ({ router, children, ...props }) => {
const child = Children.only(children)
let className = child.props.className || null
if (router.pathname === props.href && props.activeClassName) {
className = `${className !== null ? className : ''} ${props.activeClassName}`.trim()
}
delete props.activeClassName
return <Link {...props}>{React.cloneElement(child, { className })}</Link>
}
export default withRouter(ActiveLink)