Problem #5379✓ GelöstSep 12, 2023 geöffnetvon Sw33tgt4-Reaktionen

Klassenmodifikationen von Komponenten werden nicht automatisch erkannt

Kurze Antwortvon Sw33tgt2

Im Moment habe ich dies als Workaround in einer Funktion 'editor.on('component:mount', (component) => {});' hinzugefügt, bis jegliches Feedback vorliegt. Es scheint gut zu funktionieren. In einem Fall, in dem eine Klasse aus der Definition entfernt wird, bleibt die entfernte Klasse weiterhin in der Klassenliste der ge...

Lesen Sie die vollständige Antwort unten ↓

Frage

GrapesJS-Version[X] Ich bestätige, die neueste Version von GrapesJS zu verwendenWelchen Browser benutzt du? Chrome Version 116Reproduzierbarer Demo-Link https://jsfiddle.net/h5b0ndvL/1/Beschreibe den Käfer Wenn eine Komponente in der Leinwand neu gerendert wird, wird ein neues Attribut zur Modelldefinition gerendert, aber eine neu hinzugefügte Klasse wird nicht hinzugefügt, wenn die Komponente in der Leinwand gerendert wird. Die Initialisierungsfunktion Component.ts die Standardattribute sowie das Attribut der Komponente hinzufügen. 'this.set('attributes', { ... (result(this, 'defaults').attr...

Antworten (4)

👍 Am hilfreichstenSw33tgtSep 12, 2023

Im Moment habe ich dies als Workaround in einer Funktion 'editor.on('component:mount', (component) => {});' hinzugefügt, bis jegliches Feedback vorliegt. Es scheint gut zu funktionieren. In einem Fall, in dem eine Klasse aus der Definition entfernt wird, bleibt die entfernte Klasse weiterhin in der...

Sw33tgtSep 20, 2023

ja, das ist bei Klassen bewusst, mit deinem Ansatz wirst du definierte Klassen nicht aus der Komponente entfernen können, sie werden immer wieder im Component-Init hinzugefügt. Das ist in Ordnung, wenn eine Klasse auf einer Komponente vergessen wurde und wir sie in einer anderen Version des Plugins...

Sw33tgtSep 12, 2023

So etwas in der Funktion initClasses() von Component.ts würde die neuen Klassen beim Rendern zum Element hinzufügen. Lasst mich wissen, was ihr davon haltet: ''''Typoskript const cls = this.get('classes') || attrCls || []; Wechsel von Const zu Lease lass clsArr = isString(cls) ? cls.split(' ') : cl...

GJS HelperMay 17, 2026

Das von dir identifizierte Problem ist eine berechtigte Beobachtung bezüglich der Art und Weise, wie GrapesJS Standard-'Klassen' versus 'Attribute' während der Komponenteninitialisierung und des Ladens aus dem Speicher handhabt. Du hast den Unterschied in der 'Component.ts'-Initialisierungslogik ri...

Verwandte Fragen und Antworten

Führe die Forschung mit ähnlichen Themendiskussionen fort.

Kostenpflichtige Plugins, die diesem Problem entsprechen

Kuratiert nach Themen-Schlüsselwörtern und Label-Relevanz, damit Sie schneller liefern.

Alle Plugins anzeigen

Lade: Empfehlungen für kostenpflichtige Plugins...

Kostenlose Option

Überprüfen Sie die Open-Source-GrapesJS-Plugins auf GitHub Oder suchen Sie schnell in unserem kostenlosen Katalog.

Durchstöbere kostenlose Plugins →
Premium-Option

Premium-Plugins werden mit Support, regelmäßigen Updates und produktionsreifen Funktionen geliefert – das spart Tage an Integrationsarbeit.

Durchsuchen Sie Premium-Plugins →

Durchsuchen Sie Plugin-Kategorien

Springe direkt zu den Plugin-Kategorieseiten im Marktplatz.