Динамически загружаемая твиттер-лента в угловой - PullRequest
0 голосов
/ 21 июня 2019

Я использую встроенный виджет твиттера через твиттер, который просто требует использования тега скрипта

        <script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>

и тег html как на странице. Это отлично работает. Тем не менее, для моего случая URL-адрес приходит со стороны сервера. Это не работает для меня, так как кажется, что ко времени рендеринга html-тега значение url уже не доступно со стороны сервера.

и когда он станет доступен, твиттер-виджет не обновится, чтобы принять новый URL.

тег выглядит как ниже

 <a class="twitter-timeline" [href]="core.twitterFeed">Twitter Feed</a>

как заставить это работать, ожидая, пока это сработает? Я пытался сделать что-то вроде ниже, но это не работает


    <mat-card-content *ngIf="core.twitterFeed != undefined">
        <a class="twitter-timeline" [href]="core.twitterFeed">Twitter Feed</a>

    </mat-card-content>

1 Ответ

0 голосов
/ 21 июня 2019

Вы можете попытаться подписаться на события маршрутизатора и установить флаг в значение true, если URL соответствует вашему условию

isBrowser = false;

ngOnInit() {
this.subscription = router.events.subscribe(e => {
    if(e instanceof NavigationEnd){
      this.isBrowser = true;
    }
  });
}

и используйте этот флаг для отображения вашего элемента

<mat-card-content *ngIf="isBrowser">
    <a class="twitter-timeline" [href]="core.twitterFeed">Twitter Feed</a>
</mat-card-content>

...