Я использовал рендеринг на стороне сервера в Angular, чтобы сделать мой сайт более удобным для SEO.
Итак, я динамически добавил метатеги на основе данных, которые я получаю в API.
Проблема в том, что мета-теги не отображаются, когда я вижу просмотр исходной страницы из браузера.Но когда я сохраняю метатеги статичными, они отображаются на странице просмотра источника .Ниже мой код.
Код:
import { Meta } from '@angular/platform-browser';
ngOnInit() {
this.getAll()
.subscribe(res => {
this.meta.addTag({ name: 'description', content: res.aboutUs }, true);
this.meta.addTag({ name: 'keyword', content: res.keywords }, true);
this.meta.addTag({ name: 'title', content: `${res.storeName} Shop` }, true);
this.meta.addTag({ name: 'google-site-verification', content: res.googleCode }, true);
}, error => {
// handle error here..
});
}
getAll(): Observable<any> {
return this.http.
get(`https://api.com/someapi`).pipe(
map(res => {
return res;
})
);
}