Angular 通用 html 语言标签

Angular Universal html lang tag

在 Angular Universal 我有一个 index.html 文件。顶部有

<html lang="en">

我想根据我所在的页面进行更改。 maldonadoattorney.com/es/jailreleases 将是

<html lang="es">

马尔多纳多律师。com/jailreleases 会是

<html lang="en">

是否有公认的方法可以做到这一点?已阅读其他问题并且 DOCUMENT 已被弃用,因此我谨慎使用它。

我的站点地图设置了 hreflang 标签,但希望 html lang 标签是正确的。目前,我正在从 index.html.

中删除 lang="en" 标签

您是对的,但是 @angular/platform-browser 中的 DOCUMENT 已被弃用,取而代之的是 @angular/common 中的 DOCUMENT

所以你可以使用下面的代码:

import { DOCUMENT } from '@angular/common';

...

export class AppComponent implements OnInit {

  constructor(@Inject(DOCUMENT) private document: Document) {}

  ngOnInit() {
    this.document.documentElement.lang = 'es'; 
  }
  ...
}