reactjs 错误:< Link>< a>更新到Next.js 13后子级无效

b0zn9rqh  于 2022-11-22  发布在  React
关注(0)|答案(4)|浏览(1090)

在将Next.js更新到版本13之后,我得到了这个客户端错误

<Link href="/contact">
  <a>
    Contact
  </a>
</Link>
7gyucuyw

7gyucuyw1#

这意味着在代码中,<link>标记内有<a>,您可以简单地删除<a>并确保属性移到<link>标记。
因此Productions的最佳实践之一是锁定NextJs版本,以防在不知情的情况下发生类似的重大更改。

fwzugrvs

fwzugrvs2#

要 修复 此 错误 , 请 从 链接 中 删除 a 标记 。 在 the link in the error message 中 :
从 Next.js 13 开始 , <Link> 会 呈现 为 <a> , 因此 尝试 使用 <a> 做为 子 系 是 无效 的 。

# # # 无效

<Link href="/contact">
  <a>
    Contact
  </a>
</Link>

中 的 每 一 个
有效

<Link href="/contact">
    Contact
</Link>

格式

5ktev3wc

5ktev3wc3#

在Next.13中,你不需要 Package 。但是如果你需要的话,你需要在<Link>中添加legacyBehavior属性。

0ve6wy6x

0ve6wy6x4#

首先 , 你 不 需要 Package 对方 这 不是 一 个 好 的 行为 , 但 如果 你 需要 , 你 可以 添加 ' legacyBehavior ' 在 链接 . 它 会 工作 . 像 这样 -

<Link legacyBehavior href={"/fashion"}>
            <a className="text-decoration-none">
              <div></div>
            </a>
</Link>

中 的 每 一 个

相关问题