【问题标题】:Canonical tag value not appearing in page-source when using react-helmet使用 react-helmet 时页面源中未出现规范标签值
【发布时间】:2017-04-15 16:29:33
【问题描述】:

我正在使用 react js 和 react-helmet 来更改页面中的规范标签值。但是,它不会更新值。它到处都显示https://www.example.com,这在我的index.php 文件中提到。我需要更新规范链接。我之前使用过jquery,但没有成功。它在element-inspector 中更新,而不是在page-source 中更新,但谷歌将其标记为重复页面。

我关注https://github.com/nfl/react-helmet#server-usage

canonical url code

var newCanonicalUrl = "https://www.examle.com" + this.state.productUrl;

inside render function

return(<Helmet link = {[{"rel" : "canonical", "href" : {newCanonicalUrl}}]}>);

【问题讨论】:

    标签: javascript reactjs canonical-link


    【解决方案1】:

    这应该可以解决问题:

    link = {[
          { rel : 'canonical', href : newCanonicalUrl  }
    ]}
    

    【讨论】:

    • 这确实以有用的方式回答了这个问题。 为什么你相信这就是答案? 如何它是如何工作的?在没有任何上下文或含义的情况下简单地告诉某人更改他们的代码并不能帮助他们了解他们做错了什么,而且对未来的读者也没有用处。
    • @xameeramir 检查检查元素的 DOM,它应该存在
    • @Sourabh 是的,变化反映在虚拟 DOM 中。可以通过检查元素来确认。但是,问题的关键在于页面源:)
    • @xameeramir,如果你想要源代码中的标签,那么你必须进行服务器端渲染。
    • @Sourabh 哦,你说的是服务器端渲染!是的,它会出现,但我正在尝试客户端。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-07
    • 1970-01-01
    相关资源
    最近更新 更多