TypeScript-Unterstützung
GrapesJS v1.x wird mit vollständigen TypeScript-Typdefinitionen ausgeliefert – unerlässlich für Angular-Projekte.
GrapesJS ist der führende Open-Source-Visual-Builder, der mit jedem JavaScript-Framework kompatibel ist. Angular-Entwickler verwenden das Service-Wrapper-Pattern, um den Editor-Lebenszyklus zu verwalten, ihn in Komponenten einzufügen und Zone.js Konflikte zu vermeiden.
GrapesJS v1.x wird mit vollständigen TypeScript-Typdefinitionen ausgeliefert – unerlässlich für Angular-Projekte.
Initialisieren Sie in ngAfterViewInit, zerstören Sie in ngOnDestroy. GrapesJS fügt sich natürlich in Angular-Lebenszyklus-Hooks ein.
Verwenden Sie NgZone.runOutsideAngular(), um GrapesJS zu initialisieren und unnötige Wechselerkennungszyklen zu vermeiden.
GrapesJS ist eine Vanilla-JS-Bibliothek ohne Angular-spezifische Dekorateure – sie kompiliert sauber im Angular AOT-Modus.
Im Gegensatz zu React-nativen Buildern (Puck, Craft.js) ist GrapesJS eine Standard-JavaScript-Bibliothek, die sich mit jedem Framework integriert. Angular-Entwickler verwenden das Angular Service-Muster, um den Editor-Lebenszyklus zu verwalten, ihn in Komponenten einzufügen und beim Zerstören zu bereinigen.
GrapesJS wurde in Unternehmens-Angular-Anwendungen für CMS, Formularentwickler, Berichtsdesigner und White-Label-SaaS-Produkte verwendet. Sehen Sie sich das Ganze an GrapesJS Angular-Integrationsleitfaden für das vollständige Service-Wrapper-Muster und TypeScript-Beispiele.
Führe npm und installiere Grapesjs in deinem Angular-Projekt. Importiere das CSS im angular.json Styles-Array.
Verwenden Sie einen @Injectable Service, um die Editor-Instanz zu verwalten und sie außerhalb der Angular-Änderungserkennung über NgZone zu halten.
Verwende @ViewChild, um eine Referenz auf das Container-Element zu erhalten. Initialisieren Sie den Editor, nachdem die Ansicht vollständig gerendert ist.
Ruf editor.destroy() in ngOnDestroy auf, um den Editor zu säubern und Speicherlecks beim Entfernen der Komponente zu verhindern.
Vollständige TypeScript-Definitionen für Angular-Integration – kein separates @types-Paket erforderlich.
Vorgefertigte Drag-and-Drop-Blöcke für Unternehmens-Angular-Apps.
Persistiere Editorinhalte in REST-APIs, Datenbanken oder lokalen Speicher.
Erweitern Sie den Editor mit von Angular verwalteten Befehlen und Werkzeugleistenaktionen.
Integrieren Sie GrapesJS als visuelle Bearbeitungsebene eines Content-Management-Systems mit von Angular verwalteter Authentifizierung und Routing.
Drag-and-Drop-Formulardesigner integriert in ein Angular-Admin-Panel mit reaktiver Formularvalidierung und Einreichungslogik.
Visuelles Layout-Tool für individuelle Berichte – gebaut mit GrapesJS-Blöcken, die Diagramme, Tabellen und gebrandete Textabschnitte darstellen.
HTML-E-Mail-Editor mit responsiver Vorschau, angetrieben von GrapesJS Preset-Newsletter innerhalb einer Angular-App.
No-Code-Marketing-Seitenbauer für Content-Teams, eingebettet in eine Angular-SaaS-Plattform mit rollenbasierten Berechtigungen.
Multi-Tenant-Seiteneditor mit kundenspezifischem Theming, Asset-Namensabstand und Veröffentlichungsworkflows in Angular Universal.
GrapesJS feuert alle Events außerhalb von Angulars Zone ab. Wrap Editor-Event-Callbacks innerhalb von NgZone.run(() => { ... }), um die Änderungserkennung für jeden Angular-Zustand, den du im Inneren aktualisierst, korrekt auszulösen.
GrapesJS benötigt einen Browser-DOM. Bei Verwendung von Angular Universal wird die Initialisierung mit isPlatformBrowser(platformId) geschützt, um serverseitige Rendering-Fehler zu vermeiden.
Initialisiere immer GrapesJS in ngAfterViewInit. Bei ngOnInit ist die @ViewChild Container-Referenz noch nicht verfügbar und wird undefiniert sein.
Durchsuchen Sie GrapesJS-Plugins, die mit Angular auf GJS.Market kompatibel sind. Liefern Sie schneller mit produktionsreifen Komponenten.
Fang mit GrapesJS für Angular → an