Ich sehe, dass viele Seiten in Discourse die Scrollposition speichern. Die Kategorien-Seite öffnet sich jedoch jedes Mal oben. Und wenn es sich um die Hauptseite handelt und es viele Kategorien gibt, ist das nicht gerade benutzerfreundlich.
Daher wäre es wahrscheinlich besser, eine Lösung für das Scroll-Problem der Kategorien-Seite als separates Theme-Component zu implementieren. Was ist Ihrer Meinung nach der beste Ansatz?
Ich glaube, das ließe sich mit einer Theme-Komponente umsetzen. Ich bin mir nicht sicher, wie technisch versiert Sie sind, aber ich kann Ihnen einen groben Überblick darüber geben, wie das umgesetzt werden könnte.
Mithilfe der onPageChange-API können Sie prüfen, ob sich die aktuelle Seite auf der Kategorien-Seite befindet. Falls ja, prüfen Sie localStorage auf die letzte Scrollposition des Benutzers auf dieser Seite und scrollen Sie dorthin, falls diese existiert. Fügen Sie zu diesem Zeitpunkt einen Event-Listener für das Fenster hinzu, um die Scrollposition des Benutzers in localStorage zu speichern. In onPageChange entfernen Sie den Event-Listener, wenn sich der Benutzer nicht auf der Kategorien-Seite befindet.