具有 rel="alternate" 的链接标签的 rel 和 href 顺序问题

作者: davidnaas创建于 2017年5月9日更新于 2026年5月19日

使用带有 `rel="alternate"` 的链接标签时,`rel` 和 `href` 的声明顺序会影响行为。在 `rel` 之前声明 `href` 会导致 Helmet 无法正确更新链接标签。更具体地说,我正在根据路由渲染一组链接标签,以不同语言版本呈现我的应用。也就是说,每次路由更改时,链接集都会发生变化。应用使用服务器端渲染,该部分运行正常;第一次请求服务器时,会渲染正确的标签。但是,一旦您在客户端访问另一个路由,链接就会被错误更新。新标签会被添加到头部,而旧标签仍然存在。改变声明顺序可以解决这个问题,Helmet 更新时会删除旧标签。

内容来源: nfl/react-helmet