为啥在 nextjs 链接中使用标签?
Posted
技术标签:
【中文标题】为啥在 nextjs 链接中使用标签?【英文标题】:Why using a tag in nextjs Link?为什么在 nextjs 链接中使用标签? 【发布时间】:2020-11-29 03:38:07 【问题描述】:发现 NextJs,我想知道为什么在创建链接时需要 a 标签。 按照教程,我们有这个例子:
<Link href="/"><a>Back to home</a></Link>
但即使没有<Link href="/">Back to home</Link>
之类的标签,该链接也能正常工作。
这个a标签的目的是什么?是不是跟 Link 组件是多余的?
【问题讨论】:
【参考方案1】:用于语义 html 和 SEO
这为您呈现的 html 提供了正确的语义。这将有助于您的网站的所有 SEO。您可以在文档here 中查看示例和完整说明。
如果 Link 的子组件是自定义的封装了标签的组件,则必须在 Link 中添加 passHref。如果您使用样式组件等库,这是必要的。没有这个,标签将没有 href 属性,这可能会损害您网站的 SEO。
【讨论】:
以上是关于为啥在 nextjs 链接中使用标签?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 NextJS 中更新 <Image /> 标签的 src 而无需重新渲染整个组件
为啥使用 Docker 容器的 NextJS 在更改开发环境的代码后没有重新加载?
为啥 NextJS 中的 ApolloGraphQL 示例使用 getStaticProps 而不是 getServerSideProps