我一直在阅读 nextjs 文档,它说here https://nextjs.org/docs/api-reference/next/link#if-the-child-is-a-function-component that:
如果孩子Link
是一个函数组件,除了使用passHref
,您必须将组件包装在React.forwardRef
:
我是使用 Semantic UI React 的新手,所以我不确定是否需要这样做,更重要的是how去做这个。我对此感到担忧,因为就在上面引用的行之前,文档说here https://nextjs.org/docs/api-reference/next/link#if-the-child-is-a-custom-component-that-wraps-an-a-tag that:
如果没有这个(passHref),标签将不具有 href 属性,该属性
可能会损害您网站的搜索引擎优化。
我可以通过passHref
像这样:
<Link href='/posts' passHref>
<Button>See Posts</Button>
</Link>
但问题是我不认为我们可以用 Semantic UI 包装组件React.forwardRef
因为是刚进口的。所以我的问题是:
- 就这样就可以了吗?
- 或者是否有解决方法可以“不损害”我网站的搜索引擎优化?
是的 。 nextJs 文档指出,如果您的子组件不仅仅是一个标签,而且是一个函数或类组件,那么需要 passHref。每当你使用 React 组件作为子组件时,请确保传递它
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)