Laravel News berichtete am 13. Oktober 2026 über Inertia.js 3.9.0. Die Version erweitert usePoll() und router.poll() um die Option background. Sie akzeptiert throttle, pause oder continue. throttle bewahrt das bisherige Verhalten und führt Polling in einem versteckten Tab bei jedem zehnten Intervall aus. pause hält das Polling bis zur erneuten Sichtbarkeit an. continue nutzt weiterhin jedes reguläre Intervall.
import { usePoll } from '@inertiajs/vue3'
usePoll(5000, {}, { background: 'pause' })Wird während der Unsichtbarkeit eine Anfrage fällig, sendet pause sie unmittelbar nach der Rückkehr in den sichtbaren Tab. Ist das nächste Intervall noch nicht abgelaufen, wartet Inertia dessen Restdauer ab. Schnelles Wechseln zwischen Tabs löst dadurch nicht bei jedem Wechsel eine Anfrage aus. keepAlive bleibt funktionsfähig, ist aber zugunsten von background: 'continue' veraltet. Polls, die in einem bereits versteckten Tab starten, folgen nun ebenfalls der gewählten Einstellung.
Das Detail des navigate-Events enthält jetzt type. Beim ersten Laden, einschließlich eines Reloads, lautet der Wert initial. Ein normaler Inertia-Besuch erhält visit. Stellt der Browser eine Seite über die Vorwärts- oder Zurück-Schaltfläche wieder her, lautet der Wert history. Das gilt auch für eine vollständige Seitenwiederherstellung aus dem History-State, wenn die vorherige Seite nicht von Inertia stammte. Anwendungen können dann gezielt Props wie messages neu laden, da wiederhergestellte Daten veraltet sein können.
router.clearHistory() und Inertia::clearHistory() löschen nun neben den verschlüsselten History-Einträgen auch den Prefetch-Cache. Zuvor konnte ein abgemeldeter Nutzer mit der Zurück-Schaltfläche eine geschützte Seite aus diesem Cache sehen, bis der Eintrag ablief. Eine beim Leeren noch laufende Anfrage wird nach ihrem Abschluss nicht mehr gecacht. Für router.flushAll() gilt dasselbe.
Bei einer History-Wiederherstellung bricht Inertia Seitenaktualisierungen ab, die noch aufgelöst werden. Dadurch kann die Antwort eines Deferred Props, eines Polls oder eines partiellen Reloads keine wiederhergestellte Seite mehr überschreiben. Mohammed Sohail behob diesen Fall nach der Korrektur in v3.8 für Vorwärts- und Zurücknavigation über ein Deployment hinweg. Gianpiero Puleo korrigierte außerdem useRemember. Ein Wert aus dem ersten entschlüsselten History-Eintrag konnte bei einem neuen Besuch einen fehlenden Schlüssel füllen, etwa eine zuvor gelöschte Tab-Auswahl.
InfiniteScroll bricht laufende Anfragen jetzt beim Unmounten der Komponente ab. Callbacks von Antworten, die während des Seitenwechsels eingetroffen sind, werden ignoriert. Damit verschwinden Fehler auf der neuen Seite. Alte Antworten werden auch nicht mehr in eine Liste übernommen, wenn dieselbe URL mit einer anderen Query-Zeichenfolge aufgerufen wurde, etwa nach einer neuen Sortierung oder einem Filter.
Die vollständigen v3.9.0-Notizen nennen zunächst #3276 von Gianpiero Puleo für zusätzliche Aufgaben, die während des Queue-Abschlusses hinzukommen. Mohammed Sohail, auf GitHub als @thecrazybob geführt, lieferte die History-Korrektur in #3274. Pascal Baljet ergänzte den Navigate-Typ in #3291, leerte den Prefetch-Cache in #3307, behob InfiniteScroll-Anfragen in #3308, korrigierte einen Svelte-<Form>-Fehler beim Unmounten eines fokussierten Feldes in #3309 und aktualisierte Abhängigkeiten in #3310. Die Hintergrundsteuerung für Polling ist in #3292 dokumentiert.
Weitere Änderungen behandeln QuotaExceededError in history.replaceState mit #3280 von @danielperez9430. #3257 von @fouteox bewahrt Sourcemaps bei Vite-Entry-Transforms. Gianpiero Puleo behob die useRemember-Regression in #3302. Pascal Baljet korrigierte in #3312 außerdem einen InfiniteScroll-Fehler nach dem sofortigen Unmounten im Anschluss an eine Änderung der Elemente.




Kommentare
Noch keine Kommentare — schreib den ersten.
Starte die Diskussion
Kein Konto, kein Passwort nötig — gib einfach deine E-Mail-Adresse ein, wir senden dir einen einmaligen Anmelde-Link. Beim ersten Mal bist du damit automatisch angemeldet.
Deine Bewertung wird nach der Anmeldung automatisch übernommen.
Schau in dein Postfach
Wir haben einen Anmelde-Link an … gesendet. Öffne ihn auf diesem Gerät — dieser Tab meldet dich automatisch an.
Nichts angekommen? Wirf einen Blick in den Spam-Ordner — und markiere die Mail dort als „Kein Spam“, dann landet sie künftig direkt im Postfach.