Meta服务添加标签两次(一次为/和当前路线一次)

时间:2017-10-08 15:27:08

标签: angular universal

当前行为

我现在在Angular 4 Universal应用程序中使用Meta服务。所以我在主组件(路由/)上添加了一些元标记,在另一个页面上添加了不同值的相同元标记(某些路由/ abc)。现在,如果我去路由/,我只看到该页面的元标记,但如果我去任何其他路线,我看到路由的元标记/后跟css样式,后面是我目前的页面的元标记上。这是在服务器端和客户端都。

我尝试过使用forceCreation,updateTags和其他所有可能的东西。无法解决。

预期行为

只应为当前页面显示元标记。

使用说明书轻微复制问题

https://www.thepixelatedplanet.com上试试这个。查看登录页面的页面源,然后导航到研讨会并查看页面源。查看具有不同值的2个元标记块。

更新

代码重新编写 - 具有以下路线的2个组件 -

/ -> HomeComponent
/workshops -> WorkshopComponent

在HomeComponent中,

constructor(meta:Meta) {
 meta.addTags([
        { name: 'twitter:title', content: 'Home Page' },
        { property: 'og:title', content: 'Home Page' }
      ]);
}

在WorkshopComponent中,

constructor(meta:Meta) {
 meta.addTags([
        { name: 'twitter:title', content: 'Workshop Page' },
        { property: 'og:title', content: 'Workshop Page' }
      ]);
}

所以问题是在主页上,一切都很好,我只看到该页面的2个元标记。但是在研讨会页面源代码中,我看到主页元标记,然后是研讨会页面中的所有元标记都被所有样式分开。

0 个答案:

没有答案