7

我正在搜索一个关于 Angular 2 的 SEO 或 Metatags 的完整工作示例,使用 Angular 通用在服务器端呈现(由 facebook、twiter 和其他元标记识别),但我没有成功..

我找到了多篇文章,但有不完整(没有所有源代码可用)或最旧(未使用最新版本编译):

a) blog.devcross.net/2016/04/17/angular-2-universal-seo-friendly-website/ 注意:带有源代码的优秀帖子,但它不起作用。

b)builtvisible.com/universal-angular-2-server-side-rendering-seo-crawl-friendly/ 注意:非常有用,但没有完整的源代码。

c) https://gist.github.com/kaaboeld/851bc3190eec67f6723c6054751ee2dc

注意:不完全工作的例子。可能是最好的方法..

d) https://github.com/angular/universal/issues/454 注意:它是 c 选项的变体,有一些修复...

你有任何完整的工作示例吗?

提前致谢

4

2 回答 2

0

看看这个Universal-starter repo。在其他一些很棒的东西中,您可以找到处理服务器端所有元标记的angular-meta.ts服务。您需要按照本期中所述进行一些小的更改才能使其正常工作。我认为这个解决方案仍然需要一些改进(例如它在尝试更新时添加了另一个重复的标签,但我相信可以修复)

类似的服务可以在这里找到,还没有尝试过,但看起来和之前的概念一样,并且还利用了angular的Title服务来设置页面标题。

更新

另请检查angular2-meta 服务的此修复程序。

于 2017-02-21T20:50:54.400 回答
-1

我遇到了同样的问题,我按照这些文章来让它工作。

首先,使用 angular.io 中的文档:https ://angular.io/guide/universal

- ng add @nguniversal/express-engine
- npm run dev:ssr (and inspect page to view the result)

其次,使用本教程更好地理解一点:

https://www.youtube.com/watch?v=In59ucLNr0s&t=1097s

最后,应用这个服务方法来保持它的结构:

https://ultimatecourses.com/blog/dynamic-page-titles-angular-2-router-events

希望这可能对其他人有所帮助。

于 2020-05-19T11:35:53.023 回答