2017-11-29 7 views
1

Ich verwende den Forge Viewer auf einer Angular 5-Anwendung.Vollständig Entladen und neu laden Forge Viewer

Gibt es eine Möglichkeit, den Viewer vollständig zu entladen, damit er später erneut geladen werden kann?

Ich habe den folgenden Code, um den Betrachter zu entladen:

if (this.viewer && this.viewer.running) { 
    this.viewer.tearDown(); 
    this.viewer.finish(); 
    this.viewer = null; 
} 

Und ich habe auch den Code der Betrachter den Benutzer jedes Mal laden die Seite gelangt.

Wenn ein Benutzer derzeit zu einer anderen Seite der Anwendung navigiert, wird dieser Code ausgeführt, aber wenn der Benutzer zu der Seite zurückkehrt, die den Viewer enthält, wird ein graues Feld angezeigt, in dem sich der Viewer befinden sollte.

Hier ist ein GitHub Repo, der das Problem reproduziert: https://github.com/theivanaguilar/forge-viewer-reload

Bin ich hier etwas fehlt?

Antwort

1

Die statische Methode kann nur einmal aufgerufen werden, die nachfolgenden Zeiten werden nicht zurückgegeben. Alle anderen Viewer-Methoden müssen jedes Mal aufgerufen werden, wenn Ihre Komponente geladen wird. Also müssen Sie Ihren Code ein wenig umgestalten.

Meine App verwendet React und I save a boolean in the appState, um zu vermeiden, diesen Initializer zweimal aufzurufen, wenn er bereits initialisiert wurde.

Hoffe, dass hilft

+0

das wird funktionieren, vielen Dank! –

Verwandte Themen