我有一个 Angular 4 Universal 应用程序,我想开始使用JSON-LD格式的微数据。
它使用script
带有一些内容的标签,例如:
<script type="application/ld+json">
{
"@context": "http://schema.org",
...
}
</script>
由于此数据应按视图更改,因此我正在寻找一种方法在 Angular 4 中将这些数据注入到路由更改中。目前,脚本标签已从模板中剥离。使用 的解决方法时docuemnt.createElement
,这不适用于服务器端 Angular Universal 应用程序。
我该怎么做?
编辑
我使用 Angular 4.xx,现在称为普通Angular。我这样注入document
:
import { DOCUMENT } from '@angular/platform-browser';
class Test {
constructor(@Inject(DOCUMENT) private _document) {
}
public createScriptTag() {
this._document.createElement('script'); // doesn't work server-side
}
}