Ich baue eine benutzerdefinierte 'Textbereich'-Komponente und möchte, dass sie sich wie die eingebaute 'Text'-Komponente verhält, sodass das Bearbeiten des Textknotens auf der Grapesjs-Leinwand den 'Textknoten' aus '.components' aktualisiert. Und ich möchte, dass die Komponente korrekt als HTML exportiert wird, z. B....
artf
Hallo @abulka, da die Bearbeitung in der Ansicht stattfindet, solltest du das Komponentenmodell aktualisieren, sobald die Ansicht aktualisiert ist. Also sollte es bei so etwas funktionieren '''js model: { ... }, Ansicht: { Ereignisse: { Ei...
GJSBlock
Danke, dass du das gemeldet hast, @abulka. Das Problem mit Wie kann man Textnode-Bearbeitungen dazu bringen, Komponenteninhalte zu aktualisieren? scheint ein Rennbedingungs- oder Zustandsmanagement-Timingproblem zu sein. Dies passiert typi...
Version: Im Codepen unten reproduziert mit 0.16.34 (zurückgegeben von https://unpkg.com/grapesjs) und 0.16.22 in einem Preact-Projekt Beschreibe den Bug detailliert Eine benutzerdefinierte GrapesJS-Komponente ruft die "onRender"-Funktion ihrer Ansicht auf, wenn die Komponente auf die Leinwand gerendert wird. Laut der...
GJSBlock
Danke, dass du das gemeldet hast, @Dmurl5. Das Problem mit Custom Component View on Render ist als früher bezeichnet, scheint ein Rennbedingungs- oder State-Management-Timingproblem zu sein. Dies passiert typischerweise, wenn sich Komponen...
Hey @artf, ich nehme JavaScript-Eingaben vom Nutzer entgegen. Ich muss dieses JavaScript in das Vorlagen-HTML einfügen, aber es wird bereinigt. Gibt es eine Möglichkeit, die Desinfektion auszuschalten? (Ich habe kein Problem mit den von dir in #3245 genannten Problemen) oder kannst du im Editor eine Eigenschaft wie 'a...
theSC0RP
Ich habe versucht, das Skript zum iframe hinzuzufügen, in dem die Leinwand rendert, indem ich am <script>Ende des iframe-Körpers ein "Tag" hinzugefügt habe. Das funktioniert bis zu einem gewissen Grad. Das Problem dabei ist, dass ich, wenn...
artf
Können Sie bitte eine reproduzierbare Demo Ihres Problems bereitstellen?
theSC0RP
Danke für die Antwort @artf. Ich habe beim Aktualisieren des iFrames einen Fehler gemacht, also ist mein Problem jetzt gelöst! Nur noch eine Frage: Gibt es eine eingebaute Methode, um den iframe aufzufrischen?
Hallo, Wir stoßen auf ein Problem – die Farbe des Eigenschaftsnamens wie "Width" ist blau, wenn eine neue Komponente auf die Leinwand gezogen wird, aber wir ändern ihren Wert nicht. ! Bild Grapesjs ist kraftvoll und sehr hilfreich für uns. Wir sind jedoch neu bei Grapesjs und haben viel Zeit mit diesem Thema verbracht...
artf
Hallo, @luziye9 du verwendest auf jeden Fall einen Block/eine Komponente mit einer benutzerdefinierten 'Style'-Eigenschaft... Jedenfalls, wenn du ein BUG-Problem eröffnest, musst du der Vorlage folgen (grapesjs-Version, reproduzierbare Dem...
GJSBlock
Danke, dass du das gemeldet hast, @luziye9. Gute Frage zu Wie ändert sich die Farbe der Immobilie zu Blau, wenn sich der Wert ändert?. Der empfohlene Ansatz bei Canvas ist die Nutzung der ereignisgesteuerten API. Fang hier an: Überprüfen S...
Ich habe mit Möglichkeiten herumgespielt, wie man den Stil der Elemente innerhalb der Leinwand ändern kann, und festgestellt, dass durch die Verwendung des Colour-Picker-Merkmals, um die Inline-Style-Farbeigenschaft des Elements einzustellen (nicht das Inline-Style-Tag, das man über getCS() bekommt), diese Style-Eigen...
artf
Hallo @DodoTrip der Grund ist, dass man mit Inline-CSS keine Stile mit Zuständen (z. B. ':hover') und Medienabfragen definieren kann, daher habe ich es immer als nutzlose Einschränkung und nicht als Funktion gesehen. Trotzdem kannst du die...
ThetripGr
Hallo @artf und danke für deine Antwort. Könntest du mir ein Beispiel geben, wie das gerade gemacht wird, oder sollte avoidInlineStyle es einfach funktionieren lassen?
artf
Ehrlich gesagt habe ich avoidInlineStyle schon lange nicht mehr verwendet, aber ich denke, es sollte funktionieren 😁
Ich schreibe HTML-Strings als Blöcke und muss viele externe Skripte und Stile einführen, aber ich habe alle Methoden ausprobiert. Wenn ich den Block auf die Leinwand ziehe, wirkt das Skript nicht, aber Styles können geladen werden, ich hoffe auf Hilfe.Laden nach appendchild ! Bildinit Laden von Canvas:{scripts:[...]}...
harsh201
@sizhousama lade ich Skripte/Stylesheets über Canvas, während ich den Grapesjs-Editor initialisiere, und es funktioniert für mich. '' js Leinwand: { Drehbücher: ['https://unpkg.com/abc.js'], Stile: ['https://unpkg.com/abc/dist/css/abc.min....
sizhousama
Die Konsole zeigt als geladen an ! Bild
GJSBlock
Danke, dass du das gemeldet hast, @sizhousama. Tolle Frage zu [Frage]: Wie man externes JavaScript lädt, ich habe alle Methoden ausprobiert, nutzlos. Der empfohlene Ansatz mit StyleManager ist die Nutzung der ereignisgesteuerten API. Fang...
Hallo, ich habe folgendes Problem: Ich brauche einen Event-Typ-editor.on ("Sortierer: Drag: End"), der in all diesen Fällen geworfen wird: (erkennen, welches Element und wo ich es abwerfe) 1 – Lass es hören, wenn du ein Element aus dem BlockManager per Drag & Drop auf die Leinwand legst. 2 – Lass es hören, wenn du ein...
bgrand-ch
Hallo, Für zukünftige Fragen oder technische Probleme, die keine Bugs sind, ist der Tab Diskussionen auf GitHub der richtige Ort. Vergesst nicht, dieses Problem zu schließen, falls es gelöst ist, oder eine neue detaillierte Nachricht in di...
GJSBlock
Danke, dass du das gemeldet hast, @matiasmasciotta. Tolle Frage zu DRAG & DROP KOMPONENTEN:. Der empfohlene Ansatz bei ProseMirror ist die Nutzung der ereignisgesteuerten API. Fang hier an: Überprüfen Sie die GrapesJS-Dokumentation für Ihr...
Ich spiele mit GrapesJS und versuche, es in ein Symfony-5-Projekt zu integrieren. Insbesondere möchte ich in der Lage sein, Vorlagen im Editor basierend auf Bootstrap 4 und anderen Komponenten wie FontAwesome Pro sowie benutzerdefinierte Blöcke darauf zu bearbeiten. Ich nutze das Webpack-Encore-Bundle von Symfony, um...
ianef
Das ist wirklich schade. Ich habe nichts davon gesagt, von einer anderen Seite abzurufen, ich wollte es mit dem Rest des Projekts konsistent halten. Na gut, ich werde weiter woanders nach einem Editor suchen, der besser mit der aktuellen E...
artf
Hallo Ian, wenn du HTML-Inhalte von einer URL laden musst, kann ich nur empfehlen, sie serverseitig abzurufen und den Editor mit diesem Inhalt zu initialisieren (das Laden externer Ressourcen im Browser würde größtenteils das Cross-Origin-...
GJSBlock
Danke, dass du das gemeldet hast, @ianef. Toller Vorschlag zu FEAT: Erstelle die Leinwand aus einer URL! Auch wenn diese spezielle Funktion noch nicht in der Kern-API enthalten ist, gibt es mehrere Möglichkeiten, ähnliches Verhalten zu err...
Ich füge manuell einen neuen Knoten in eine gerenderte Komponente ein. Das visuelle Ergebnis ist okay, aber unmöglich zu speichern, weil mein Stil nicht mit der automatisch generierten GrapesJS-ID funktioniert. Um diesen Punkt manuell zu lösen, klicke ich doppelt auf die Komponente, um sie zu öffnen, und klicke im Lei...
bgrand-ch
Optimierte TextEditor.vue Datei: Aber das Problem bleibt bestehen: ✔️ span Knoten ersetzt den vorherigen Inhalt der Auswahl durch font-family und color Stile. ❌ span Knoten von GrapesJSnicht erkannt wird, weil es keine GrapesJS automatisch...
bgrand-ch
i️ Funktioniert nicht direkt mit HTML, sondern nur mit JSON. Komponent = JSON-Knoten (HTML-Element + GrapesJS-Daten) '''js addStylesToText (styles, tagName = 'span') { const inlineStyles = styles.map(style => style.join(':')).join(';') + '...
GJSBlock
Danke, dass du das gemeldet hast, @bgrand-ch. Gute Frage zu Wie aktualisiert/rendert man neu, nachdem ein neuer Knoten hinzugefügt wurde?. Der empfohlene Ansatz bei ProseMirror ist die Nutzung der ereignisgesteuerten API. Fang hier an: Übe...
Hallo @artf, Vielen Dank für dieses großartige Framework. Ich möchte zu Grapesjs beitragen. Allerdings bin ich dumm, Webpack und Babel zu verwenden. Wenn ich versucht habe, Grapesjs zu bauen, habe ich einige Fehler gemacht. Fehler: "Konsole"[email protected] Buildnpm run check && npm run v:patch && npm run build-dev &&...
longdoan7421
@Swindler36 Dieser Fehler ist, dass es 'eslint' nicht finden kann. Hast du 'npm install' ausgeführt?
fzerman
@longdoan7421 Ich habe diesen Fehler behoben. Danke. Ich möchte zwei neue Fragen zu Webpack und Babel stellen.Ich kann Webpack und Babel separat verwenden. Allerdings. Ich konnte sie nicht integrieren. Wie kann ich das machen? Wie kann ich...
GJSBlock
Danke, dass du das gemeldet hast, @fzerman. Das Problem mit Frage: Baue Grapesjs mit npm scheint ein Rennbedingungs- oder State-Management-Timingproblem zu sein. Dies passiert typischerweise, wenn sich Komponenten-Lebenszyklusereignisse un...