我需要获取页面标题并将其写入变量。 我正在使用打字稿代码:
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'home',
templateUrl: './home.component.html'
})
export class HomeComponent implements OnInit {
title: string;
ngOnInit() {
console.log("Title is " + this.title);
this.title === document.title;
}
}
但我在控制台上收到“标题未定义”。
我也尝试过:
title: string;
ngOnInit() {
this.title === this.titleService.getTitle();
console.log("Title is " + this.title);
}
public constructor(private titleService: Title) { }
getTitle() {
this.titleService.getTitle();
}
但结果是一样的。获取页面标题的正确方法是什么?
答案 0 :(得分:2)
你犯了几个错误。
===
用于严格等同比较,而不是用于设置变量的值(更多关于===
运算符可在此处找到:Difference between == and === in JavaScript)。将您的代码更改为:
ngOnInit() {
this.title = document.title
console.log(this.title)
}
或:
ngOnInit() {
this.title = this.titleService.getTitle();
console.log("Title is " + this.title);
}
答案 1 :(得分:0)
您可以使用@ angular / platform-browser中的标题提供程序。请参阅https://medium.com/@_ericmiller/setting-the-title-in-angular2-3c9379090527