我有一个Angular 2应用程序,它使用Flask(Python框架)在访问索引时向浏览器提供静态HTML的内容。我想要做的是在我的AboutComponent
中显示我的应用程序的版本。我目前让Flask通过元标记(<meta name="version" content="{{ version }}">
)将版本渲染到我的HTML中。
我最初的尝试是在我的AppComponent
(根组件)组件中创建一个输入(我会将其传递到我的AboutComponent
,但我已经知道这样的事情是不可能的
话虽如此,如何在组件中访问HTML的元标记?
答案 0 :(得分:1)
@onetwothree - 如果你只是想访问它的内容,那就是这样的。
export class MyComponent implements OnInit{
private appVersion:string;
constructor(){
this.appVersion = "";
}
// Runs on component creation
ngOnInit(){
this.appVersion = this.getMetaData();
}
getMetaData():string{
return document.getElementByName("version")[0].content;
//=== "what ever the version you passed in your FLASK template"
}
}
答案 1 :(得分:1)
更像Angular的方式是使用DomAdapter
import 'package:angular2/platform/browser.dart' show BrowserDomAdapter;
抱歉,我不知道如何将此导入转换为TS。
MyComponent {
constructor(private dom: BrowserDomAdapter ) {
dom.querySelector('meta[name="version"]').getAttribute('content');
}
}