Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
不同页面中的ReactJS标题标记_Reactjs_Seo_Meta Tags - Fatal编程技术网

不同页面中的ReactJS标题标记

不同页面中的ReactJS标题标记,reactjs,seo,meta-tags,Reactjs,Seo,Meta Tags,我是一个很新的反应,我有几个页面,我想有不同的标题内容。例如,我的index.js页面除了我的contact.js之外还有另一个标题,还有元信息 我认为我通过安装react meta标记解决了这个问题,我将我的内容放在如下位置: class Index extends React.Component { render() { return( <div> <MetaTags>

我是一个很新的反应,我有几个页面,我想有不同的标题内容。例如,我的index.js页面除了我的contact.js之外还有另一个标题,还有元信息

我认为我通过安装react meta标记解决了这个问题,我将我的内容放在如下位置:

class Index extends React.Component {
    render() {
        return( 
            <div>
                <MetaTags>
                <title></title>
                <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
                <meta name="viewport" content="width=device-width, initial-scale=1"/>
                <meta name="copyright" content="" />
                <meta name="robots" content="index,follow" />
                <meta name="author" content="" />
                <meta name="description" content="" />
                <meta name="keywords" content="" />
                </MetaTags>
                <Header/>
                <Experience/>
                <Projects/>
                <Contact/>
                <Footer/>
            </div>
        );
    }
}
类索引扩展了React.Component{
render(){
报税表(
);
}
}
然而,这似乎不起作用,尽管在众多的谷歌搜索中,人们声称谷歌机器人足够聪明,能够捕捉到这一点。你看,当我在谷歌上搜索我自己的网页时,它只显示我的网站URL(通常是没有标题的网站),它还告诉我我的网站不适合移动,事实就是这样。当我点击链接,或者直接进入我的页面时,它会显示出完美的响应

如果我把这段代码放在index.html文件中,它似乎可以完美地工作。我唯一的问题是,我只有一个标题,在我所有的页面上都有相同的关键字。我怎样才能解决这个问题


我不确定,但我很肯定这会损害我的搜索引擎优化。尽管我的一切都正常,但只要谷歌不识别我列出的元标记等重要内容,这并不重要。

“react-document-meta”似乎是添加元标记的更好库。“我查过了,但我似乎不能正确地使用它。”。因此,在一些谷歌搜索中,我尝试了另外两个插件——其中一个叫做react-Healmet。当我访问网站时,它工作得非常好,但是当我在我的网站上做SEO检查时,它仍然说缺少标题和元标记。这可能是因为头盔是服务器端的,因此会在静态HTML内容之后呈现,因此会有“延迟”,这可能就是为什么谷歌(?)和其他SEO检查器不会对其进行重新登录的原因吗?是的,正如这里提到的,你是对的:,它说,“这些框架使用浏览器构建页面的实际内容。当谷歌抓取你的网站时,它只是读取原始页面。它不会在浏览器中打开它们,也不会运行javascript。所以,它看不到内容,只看到一个空页面。“@raksheetbhat我明白了。但一定有办法解决这个问题?我的意思是,reactJS不是最流行的JavaScript框架之一吗?你说得对。我想一种方法是尝试更多的组件,直到其中一个工作:\。我希望我有一个更好的答案。下面是关于同一个问题的讨论:,建议使用“react document.title”。希望这个对你有用。