Teilen Sie diesen Artikel:

Blog
Aug 08, 20234 min read

Die Websites der Flughäfen Varna und Burgas verwenden React-Komponenten in Drupal

Die Websites der Flughäfen Varna und Burgas verwenden React-Komponenten in Drupal

Warum brauchen wir eigentlich React?

Wir alle bei Bulcode lieben Drupal, aber als wir zum ersten Mal die Betreuung der Websites der Flughäfen Varna und Burgas übernahmen, erbten wir Drupal 8-Systeme, die auf eine Weise erstellt worden waren, die nicht so sehr Drupal entsprach. Folglich war die Migration / Neuentwicklung von Drupal 9 die erste Hürde. Als Referenz können Sie diesen Artikel lesen, der die Vorteile der Migration sowie die Kosten des Nichtstuns erläutert, falls Sie noch über ein Upgrade (Migration) nachdenken.

Was genau macht es zu einer Herausforderung? Die Migration (oder das Upgrade) von Drupal 8 auf Drupal 9 ist allen Informationsquellen zufolge ein weitgehend automatisierter Prozess. Das ist bei den meisten Websites nicht immer der Fall, vor allem, wenn sie mit den neuesten Kern- und Modulversionen von Drupal 8 veraltet sind, weshalb wir bei Bulcode dies unseren Kunden immer als ein eigenes kleines Projekt präsentieren.

Das Erbe, das wir für Flughafenpläne erhielten, war die treibende Kraft hinter unserer Entscheidung, React zu verwenden. Es war viel manuelle Arbeit erforderlich, ebenso wie das Erstellen und Hochladen von CSV-Dateien, was gelegentlich zu Ausfällen führte. Es war ein mühsamer Prozess, der einige Male am Tag stattfand. Das war etwas, das so schnell wie möglich behoben werden musste.

Was war also unser Ansatz? Mit spezifischem Caching und React-Komponenten für das Frontend sind API-gesteuerte Zeitpläne schnell und on-the-fly.

Warum Drupal und React? Drupal ist ein Content-Management-System mit einer robusten API für Webdienste, und React ist eine einfache Möglichkeit, interaktive Benutzeroberflächen zu erstellen. Die Kombination von React und Drupal funktioniert in vielerlei Hinsicht gut. Drupal-basierte Websites können jedoch auch React für die Entwicklung von Komponenten nutzen. Diese Methode wird als "progressive Entkopplung" bezeichnet.

Jetzt wollen wir sehen, wie sie eingesetzt wird!

Hinzufügen von React zu unseren Komponenten: unsere Erfahrungen

Zu Beginn müssen wir alle erforderlichen Abhängigkeiten herunterladen und installieren:
yarn add react react-dom webpack webpack-cli @babel/cli @babel/core @babel/preset-env @babel/preset-react babel-loader webpack webpack-cli

Bitte beachten Sie, dass wir hier nicht auf die Einzelheiten der Funktionsweise der einzelnen Module eingehen und auch nicht darauf, welche Module als Entwicklungsabhängigkeiten hinzugefügt werden sollten. Auf der Paketseite können Sie dies sehen.

Richten wir nun den Abschnitt package.json scripts ein:

package json scripts

Getrennte Entwicklungs- und Produktions-Webpack-Konfigurationen sind eine gute Idee, also denken Sie daran, wenn Sie Ihre eigenen Dateien erstellen.

Fügen Sie der Mischung eine einfache webpack.config.js hinzu. React Hot Reloader mit Webpack Server, einige CSS-, SASS- und File-Loader sowie zusätzliche Plugins wie ESLint und Minifier werden wahrscheinlich für Ihre Arbeit benötigt. Wir werden hier nicht näher darauf eingehen, da dies eine Frage der persönlichen Vorlieben ist.

webpack config

Vergessen wir nicht unsere Babel-Konfigurationen. Dies kann über package.json oder .babelrc erfolgen.

babel config

Wir kommen der Sache immer näher. In unserem dist-Ordner finden wir eine app.bundle.js, die wir als Bibliothek in unserem Thema verwenden können, wenn unsere Build-Skripte ausgeführt werden. Um die Implementierung zu vereinfachen, möchten wir sie der gesamten Anwendung hinzufügen. Beachten Sie, dass die Leistung Ihrer Anwendung beeinträchtigt werden kann, wenn Sie React nur für einige wenige Komponenten benötigen, die über beliebige Seiten verstreut sind.

app bundle js

Wir sind bereit, mit unserer eigentlichen React-Komponente zu beginnen. In diesem Abschnitt sind uns keine Grenzen gesetzt.

src/index.jsx

react component

Zum Schluss fügen wir das Markup hinzu, das für die Anzeige unserer React-Komponente erforderlich ist. Jetzt liegt es an Ihnen, sie dort zu platzieren, wo Sie wollen!

html

Und voilà, wir haben React erfolgreich in unser Drupal-Projekt integriert.

 

Fraport Bulgaria
"Die individuelle Herangehensweise, die pünktlichen Lieferungen und die präzise Dokumentation der Entwicklungen sind ein kleiner Teil der Gründe für die Fortsetzung der aktiven Partnerschaft mit Bulcode 2016 Ltd. Es ist unser Privileg und unsere Verpflichtung, das Team von Bulcode 2016 Ltd. als äußerst kompetent, zuverlässig und verantwortungsbewusst bei der Umsetzung der Verpflichtungen zu empfehlen."

ABONNIEREN SIE UNSEREN NEWSLETTER

Teilen Sie diesen Artikel:

ABONNIEREN SIE UNSEREN NEWSLETTER

Verwandte Blog-Artikel

    Warum Startups zögern, mit einer Agentur für maßgeschneiderte Softwareentwicklung zusammenzuarbeiten - und wie wir alle Bedenken ausräumen

    Blog

    Warum Startups zögern, mit einer Agentur für maßgeschneiderte Softwareentwicklung zusammenzuarbeiten - und wie wir alle Bedenken ausräumen

    <p>Start-ups zögern oft, mit Softwareagenturen zusammenzuarbeiten, weil sie Bedenken hinsichtlich Kosten, Kontrolle und Flexibilität haben. Entdecken Sie, wie die maßgeschneiderten Softwarelösungen von Bulcode jede Herausforderung meistern und für Wachstum und Flexibilität sorgen.</p>

    Geschrieben von Svetoslava Angelova
    Nov 05, 20246 min read
    Aufbau eines hochleistungsfähigen agilen Teams: Unser bewährter Ansatz

    Blog

    Aufbau eines hochleistungsfähigen agilen Teams: Unser bewährter Ansatz

    Erfahren Sie, wie wir leistungsstarke agile Teams aufbauen, indem wir klare Rollen definieren, die Zusammenarbeit fördern und flexible Tools einsetzen.

    Geschrieben von Svetoslava Angelova
    Aug 27, 20249 min read
    Drupal 11: Was ist zu erwarten? Umfassender Leitfaden zu neuen Funktionen und Erweiterungen

    Blog

    Drupal 11: Was ist zu erwarten? Umfassender Leitfaden zu neuen Funktionen und Erweiterungen

    Drupal 11 ist da! Entdecken Sie in diesem Artikel die spannenden Funktionen und Verbesserungen. Führen Sie jetzt ein Upgrade durch, um Ihre digitale Strategie mit dem Experten-Support von Bulcode neu zu definieren.

    Geschrieben von Svetoslava Angelova
    Aug 05, 20247 min read
    Einzelne Verzeichniskomponenten in Drupal core: Ein umfassender Überblick

    Blog

    Einzelne Verzeichniskomponenten in Drupal core: Ein umfassender Überblick

    Erfahren Sie, wie Single Directory Components (SDC) in Drupal Core den Entwicklungsprozess rationalisieren, indem komponentenbezogene Dateien in einem einzigen Verzeichnis gekapselt werden. Erfahren Sie mehr über die Vorteile von SDCs und folgen Sie einer Schritt-für-Schritt-Anleitung, um sie in Ihren Drupal-Projekten zu implementieren.

    Geschrieben von Nikolay Tsekov
    Aug 07, 20244 min read
    Drupal-Versionen verstehen und eine Migrationsstrategie planen

    Blog

    Drupal-Versionen verstehen und eine Migrationsstrategie planen

    Erkennen Sie die verschiedenen Drupal-Versionen und halten Sie Ihre Website auf dem neuesten Stand.

    Geschrieben von Svetoslava Angelova
    Aug 08, 20234 min read
    Drupal 9 Bild in WebP-Format konvertieren

    Blog

    Drupal 9 Bild in WebP-Format konvertieren

    WebP ist in der Lage, die Datenkomprimierung auf ein neues Niveau zu heben, da es einen Vorhersagemodus in den JPG-Prozess einfügt, der die Leistung seines JPG-Verwandten deutlich übertrifft. Und wir haben die Ergebnisse, um dies zu beweisen.

    Geschrieben von Vasil Boychev
    Aug 08, 20237 min read
    React im Überblick - Definition, SPA, Komponenten, Hooks

    Blog

    React im Überblick - Definition, SPA, Komponenten, Hooks

    React ist ein freies und quelloffenes JavaScript-Framework für die Erstellung von Benutzeroberflächen auf der Grundlage von UI-Komponenten. Es ist auch als React.js oder ReactJS bekannt.

    Geschrieben von Mihail Shahov
    Aug 07, 20236 min read
    Was ist Agile und warum verwenden wir es?

    Blog

    Was ist Agile und warum verwenden wir es?

    Agile ist eine zeitlich begrenzte, iterative Methode zur Softwarebereitstellung, die darauf abzielt, die Software schrittweise während des Projekts bereitzustellen und nicht alles auf einmal gegen Ende.

    Geschrieben von Svetoslava Angelova
    Aug 08, 20234 min read
    NVM vs NPM vs Yarn

    Blog

    NVM vs NPM vs Yarn

    Im Vergleich zu den drei Technologien unterscheidet sich der NVM von den beiden anderen. Der Node Version Manager (NVM) wird zur Verwaltung von Node.js-Versionen verwendet. NPM und Yarn sind Node.js-Paketmanager. Sie ermöglichen das Herunterladen, Installieren und Verwalten von Paketen bei der Entwicklung in JavaScript.

    Geschrieben von Ventsislav Venkov
    Aug 07, 20235 min read
    Welches Modell der IT-Verpflichtung passt am besten zu Ihnen?

    Blog

    Welches Modell der IT-Verpflichtung passt am besten zu Ihnen?

    Festpreis, Zeit und Material oder engagierte Teams? Wägen Sie sorgfältig alle Vor- und Nachteile des Auftragsmodells für Ihr Projekt ab.

    Geschrieben von Svetoslava Angelova
    Aug 07, 202310 min read
    Laravel Mix - ein einfacher und leistungsstarker Wrapper um Webpack

    Blog

    Laravel Mix - ein einfacher und leistungsstarker Wrapper um Webpack

    Laravel Mix bietet eine fließende API für die Definition von Webpack-Build-Schritten für Ihre Laravel-Anwendung unter Verwendung mehrerer gängiger CSS- und JavaScript-Präprozessoren.

    Geschrieben von Stefani Tashkova
    Aug 07, 20234 min read
    Was ist Scrum?

    Blog

    Was ist Scrum?

    Scrum ist ein Teil der agilen Methodik. Es ist das beliebteste Framework für agile Entwicklung und ein einfaches Prozess-Framework.

    Geschrieben von Svetoslava Angelova
    Aug 08, 20234 min read

    KONTAKT AUFNEHMEN

    Sie haben ein Projekt, das Sie gerne starten würden?