reactjs - 在组件内使用react router Link

标签 reactjs react-router server-side-rendering

我正在使用组件内部的链接来访问不同的页面,例如

 <Link to={'/documents/' + x.id}></Link

但是,这会导致 SEO 问题,因为页面更改时元标记不会刷新。我也在使用服务器端渲染。

使用 Link 来保持流畅的页面更改并仍然进行 SEO 优化的正确方法是什么。

谢谢

最佳答案

我个人习惯在项目中创建 SEO 组件以避免出现问题。我也喜欢用react-helmet ,它将管理对 <head/> 的所有更改

例如:

import Helmet from "react-helmet";
import React from "react";

// mini SEO component
function SEO ({ title, description, keywords, url, lang }) {
    return (
        <Helmet
            htmlAttributes={{ lang }}
            title={{ title }}
            meta={[
                {
                    name: 'description',
                    content: description
                },
                {
                    name: 'keywords',
                    content: keywords
                },
                {
                    property: 'og:url',
                    content: url
                }
            ]}
        />
    );
}

export default SEO;

因此,使用所需的属性将其导入每个页面

<SEO 
    title='example'
    description='example'
    keywords=''
    url='https://example.com'
    lang='en-us'
/>

希望有帮助。

关于reactjs - 在组件内使用react router Link,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58464478/

相关文章:

javascript - Nuxt @onloadstart 不使用 beforeCreate 触发函数

reactjs - 胜利 native : events props not working in react native/event not firing in react native when using victory bar chart

javascript - 是否可以为 React 的类模型打开 React.js 自动绑定(bind)

javascript - React Higher Order Component - 从包装器组件调用包装组件中的函数

asp.net-core - 在评估 OnGetAsync 之前呈现 Razor 页面

javascript - NUXT - SSR - 组件未在服务器端呈现

javascript - React 从 ReactDOM.render 调用函数

reactjs - 在非 SPA 中使用 React-router

javascript - 路由器的 prop History.location 中的路径名不会更新

javascript - React Router 在生产环境中出现 404 错误