2017-05-31 3 views
1

Ich habe den Code unten gezeigt, jedoch nachdem der Benutzer die Ansicht lässt die Zeitlinie verschwindet?Ionic 2 twitter eingebettet Zeitleiste verschwindet

Das erste Mal, wenn wir die Zeitleiste vorhanden zu der Ansicht gehen, aber wenn wir die Ansicht verschwindet zurückzukehren.

Hier ist mein Code

In Index.HTML

<!-- Timeline Twitter --> 
    <script src="http://platform.twitter.com/widgets.js"></script> 

    <!-- cordova.js required for cordova apps --> 
    <script src="cordova.js"></script> 

In Twitter.html

<ion-content> 
    <ion-grid > 
     <ion-row> 
      <!--Timeline Twitter --> 
      <a id="twitter" class="twitter-timeline" 
       data-tweet-limit="10" 
       data-chrome="noscrollbar nofooter" 
       href="https://twitter.com/UnivLaRochelle">Tweet de L'université de la Rochelle</a> 
     </ion-row> 
    </ion-grid> 
</ion-content> 

In Twitter.ts

import { Component } from '@angular/core'; 
import { NavController } from 'ionic-angular'; 

@Component({ 
    selector: 'page-twitter', 
    templateUrl: 'twitter.html', 
}) 
export class twitterPage { 

    constructor(public navCtrl: NavController) { 

    } 
    ngAfterViewInit() { 
     !function(d,s,id){ 
      var js: any, 
       fjs=d.getElementsByTagName(s)[0], 
       p='https'; 
      if(!d.getElementById(id)){ 
       js=d.createElement(s); 
       js.id=id; 
       js.src=p+"://platform.twitter.com/widgets.js"; 
       fjs.parentNode.insertBefore(js,fjs); 
      } 
     } 
     (document,"script","twitter-wjs"); 
    } 
} 

Ich habe versucht, mehrere Möglichkeiten, aber ich habe keine Lösung gefunden, kann mir jemand helfen?

Antwort

1

ersetzen ngAfterViewInit mit diesem

!function(d,s,id){ 
     var js: any, 
      fjs=d.getElementsByTagName(s)[0], 
      p='https'; 
      js=d.createElement(s); 
      js.id=id; 
      js.src=p+"://platform.twitter.com/widgets.js"; 
      fjs.parentNode.insertBefore(js,fjs); 
    } 
    (document,"script","twitter-wjs");