当 Next.js 中的路由处于活动状态时定位活动链接

2023-12-11

如何像我们在 React-Router-4 中那样定位 Next.js 中的活动链接? 意思是,当活动链路的路由处于活动状态时,为活动链路指定一个类别?


一个简单的解决方案基于useRouter hook:

import Link from "next/link";
import { useRouter } from "next/router";


export const MyNav = () => {

  const router = useRouter();

  return (
    <ul>
      <li className={router.pathname == "/" ? "active" : ""}>
        <Link href="/">home</Link>
      </li>
      <li className={router.pathname == "/about" ? "active" : ""}>
        <Link href="/about">about</Link>
      </li>
    </ul>
  );
};

你也可以使用router.asPath代替router.pathname如果你想包含 url 查询参数。如果您想处理锚标记,例如/#about.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当 Next.js 中的路由处于活动状态时定位活动链接 的相关文章

随机推荐