Wie kann man die Vorschau mit JavaScript ändern?

Das hängt irgendwie mit meiner letzten Frage zusammen. Ich habe aber ein neues Thema erstellt, da es sich um eine neue Frage handelt.

Was ist der beste Weg, um die Vorschau (die du beim Verfassen eines Beitrags siehst) mit JavaScript in einer Theme-Komponente zu modifizieren?

Ich weiß, dass ich das DOM (nachdem es „gekocht“ wurde) in decorateCookedElement ändern kann, aber es wäre schön, etwas wie addPostTransformCallback zu haben, mit dem man den gekochten Beitrag als String ändern kann (mit t.cooked). Allerdings wird addPostTransformCallback nicht aufgerufen, wenn die Vorschau aktualisiert wird (sondern nur beim ersten Öffnen zur Bearbeitung eines Beitrags).

Möchtest du nur die Vorschau aktualisieren oder auch beeinflussen, wie ein eingereichter Beitrag aussehen wird?

1 „Gefällt mir“

Ich möchte sowohl die Vorschau als auch den eingereichten Beitrag aktualisieren (möchte die Änderungen jedoch nicht speichern :slightly_smiling_face:).

Ich mache mir Sorgen, dass es zu langsam sein könnte, wenn ich meine Änderungen am DOM vornehme (mit decorateCookedElement). Obwohl ich einige Tests durchführen muss, um festzustellen, ob das wirklich der Fall ist.

Der eingereichte Beitrag wird auf dem Server erneut verarbeitet. Damit die Änderung funktioniert, benötigen Sie ein Plugin, keine Theme-Komponente.

Dieser Beitrag behandelt dieses Thema: Repackaging a markdown-it extension as a Discourse plugin

5 „Gefällt mir“

Danke! Ich werde das definitiv mal ansehen.

1 „Gefällt mir“