Single-Page-Webanwendung
Informationen zu Single-Page-Anwendungen
Single Page Applications (SPA) sind eine spezielle Art von Web-Apps. Ein SPA lädt eine einzelne Seite, wenn Sie eine Website aufrufen und ab diesem Zeitpunkt alle nachfolgenden Inhalte auf dieselbe Seite laden, auf der Sie navigieren. Dies funktioniert scheinbar wie eine normale Website, aber wenn Sie zwischen „Seiten“ wechseln, wird die Seite nicht neu geladen.
Standardmäßig wird Bereitstellungscode ausgeführt, sobald eine Webseite geladen wird. Da SPAs jedoch nicht aktualisiert werden, wenn Sie zwischen Seiten navigieren, wird der Bereitstellungscode nicht neu ausgewertet, wenn Sie zwischen Seiten navigieren. Wenn Sie die unten beschriebenen Techniken verwenden, können Sie den Bereitstellungscode nahtlos auf Ihrer SPA-Website verwenden.
Intercept-Logik bei URL-Änderung automatisch neu auswerten
Wenn Ihre Single-Page-Anwendung von der clientseitigen Weiterleitung für die Benutzernavigation abhängt, können Sie die Neubewertung von Intercepts bei nachfolgenden URL-Änderungen erzwingen, indem Sie die Intercept-Logik Neuevaluieren aktivieren, wenn sich die URL auf der Ebene des Website-Feedback-Projekts ändert. Wenn Sie diese Einstellung aktivieren, können Sie zusätzlich zur Auswertung, die beim initialen Laden der Seite erfolgt, auch die Abfanglogik auswerten.
Um die automatische Neubewertung der Intercept-Logik zu aktivieren, führen Sie die folgenden Schritte aus:
- Navigieren Sie in Ihrem Website-Feedback-Projekt zu den Einstellungen.
- Klicken Sie auf Projekt verwalten.
- Wählen Sie Projektoptionen aus dem Dropdown-Menü aus.
- Stellen Sie sicher, dass die Intercept-Logik neu ausgewertet wird, wenn die URL-Änderungen im Abschnitt Support für Single-Page-App (SPA) markiert ist.
Achtung: Wenn Sie diese SPA-Einstellung in Verbindung mit der Intercept-Level-Option zum Anzeigen mit benutzerdefiniertem JavaScript-Code (manuell) verwenden möchten, müssen Sie trotzdem den
QSI.API.run();
Methode, um das Intercept abzurufen, das auf jeder SPA-Seite angezeigt werden soll.
Manuelle Implementierung mit JavaScript-API
Diese Methode beschreibt, wie Sie Ihren Deployment-Code so umstellen können, dass er manuell ausgeführt wird. Das bedeutet, dass der Deployment-Code erst dann ausgeführt oder die zugehörige Logik ausgewertet wird, wenn die entsprechende JavaScript-API-Anforderung initiiert wurde.
Manuell einzuspielen
- Navigieren Sie zur Registerkarte Einstellungen.
- Klicken Sie auf die Dropdown-Liste Projekt verwalten.
- Wählen Sie Projektoptionen.
- Aktivieren Sie die Option Projekt manuell laden.
- Kehren Sie zur Registerkarte Intercepts zurück, und legen Sie bei Bedarf die Logik auf Ihr Intercept oder den Aktionssatz fest.
- Platzieren Sie den Bereitstellungscode auf Ihrer Website, vorzugsweise in einer globalen Kopf- oder Fußzeile, sodass er auf allen Seiten geladen wird.
- Fügen Sie die entsprechenden JavaScript-API-Anforderungen hinzu, je nachdem, wie oft Ihre Website auf das Intercept verweisen soll. Diese Anforderungen finden Sie im Abschnitt unten.
JavaScript-API-Anforderungen
Wenn Sie möchten, dass Qualtrics Ihr Projekt in einer einzigen Instanz bewertet, verwenden Sie diese beiden Anfragen:
- Diese Anforderung lädt den Deployment-Code für alle Intercepts und Creatives auf der Seite. Das „Laden“-API entspricht dem erneuten Laden einer Seite, auf der Code vorhanden ist.
QSI.API.load();
Tipp: Wenn Sie in Ihren Projekteinstellungen Projekt manuell laden aktiviert haben, müssen Sie dieses API nicht aufrufen, um den Bereitstellungscode beim ersten Laden der Seite zu laden. Es ist nur erforderlich, das Laden zu erzwingen, um Zustandsänderungen auf der Seite zu berücksichtigen, die ohne erneutes Laden erfolgen. - Dadurch wird die Auswertung des Deployment-Codes gestartet und alle Creatives werden angezeigt, wenn sie die Anzeigebedingungen erfüllen.
QSI.API.run();
Wenn Qualtrics Ihren Projektcode mehr als einmal auf derselben Seite bewerten soll, wiederholen Sie jeweils die folgenden drei Schritte:
- Diese Anforderung entfernt den Bereitstellungscode für alle Intercepts oder Creatives, die auf der Seite vorhanden sind.
QSI.API.unload();
- Dadurch wird der Bereitstellungscode für alle Intercepts oder Creatives auf der Seite geladen. Dies entspricht dem Neuladen der Seite.
QSI.API.load();
- Dadurch wird die Auswertung des Deployment-Codes gestartet und alle Creatives werden angezeigt, wenn sie die Anzeigebedingungen erfüllen.
QSI.API.run();