mit einem aktuellen Update ist eine unserer Komponenten kaputtgegangen. Die Komponente hat zuvor den Inline-Zitat-Button erweitert, der quote-button.hbs war. Diese Datei existiert nicht mehr – stattdessen wurde der gesamte Code in eine gjs-Datei post-text-selection-toolbar.gjs verschoben, und wenn ich versuche, sie auf die „alte Weise“ zu überschreiben, beschwert sich der Browser mit der folgenden Meldung.
component-templates.js:62 [discourse/theme-48/discourse/templates/components/post-text-selection-toolbar] post-text-selection-toolbar wurde mit gjs erstellt und seine Vorlage kann nicht überschrieben werden. Überschreiben wird ignoriert.
Bedeutet das, dass dieses UI-Element in Discourse nur über die dort definierten PluginOutlets angesprochen werden kann?
Was ist, wenn ich mehr Kontrolle über den Zustand der Buttons und die neu hinzugefügten benötige? Ich habe das Gefühl, dass dies die Funktionalität einschränkt.
Hallo @Sören_Geier – das ist richtig, Sie müssen Plugin-Outlets verwenden, um Änderungen in diesem Teil der Benutzeroberfläche vorzunehmen. Plugin-Outlets sind eine wesentlich robustere Methode zur Erweiterung von Dingen und werden bei zukünftigen Discourse-Core-Updates zuverlässiger sein.
Wenn die vorhandenen Plugin-Outlets für Ihren Anwendungsfall nicht funktionieren, teilen Sie uns dies bitte mit, und wir werden gerne neue einführen.
Dies ist in der Tat eine alternative Methode, um Dinge in Plugin-Outlets zu rendern. Es handelt sich jedoch eher um eine Code-Stil-Sache – sie führt keine neuen Funktionen im Vergleich zu /connectors/...-Dateien ein.