Partager cet article :

Blog
Aug 08, 20234 min read

Les sites web des aéroports de Varna et Burgas utilisent des composants React dans Drupal

Les sites web des aéroports de Varna et Burgas utilisent des composants React dans Drupal

Comment en sommes-nous arrivés à avoir besoin de React ?

Chez Bulcode, nous avons tous ♥ Drupal, mais lorsque nous avons repris le support des sites web des aéroports Varna et Burgas, nous avons hérité de systèmes Drupal 8 qui avaient été réalisés d'une manière qui n'était pas si Drupal que cela. Par conséquent, la migration / le redéveloppement de Drupal 9 a été le premier obstacle. Pour référence, vous pouvez consulter cet article qui explique les avantages de la migration ainsi que les coûts de l'inaction si vous êtes encore en train de débattre d'une mise à niveau (migration).

Qu'est-ce qui en fait un défi, exactement? La migration (ou mise à niveau) de Drupal 8 vers Drupal 9 est un processus largement automatisé, selon toutes les sources d'information. Ce n'est pas toujours le cas pour la plupart des sites web, en particulier lorsqu'ils ne sont pas à jour avec les versions les plus récentes du noyau et des modules contributeurs de Drupal 8, c'est pourquoi, chez Bulcode, nous présentons toujours la migration à nos clients comme un petit projet qui leur est propre.

L'héritage que nous avons reçu pour les horaires des aéroports a été le moteur de notre décision d'utiliser React. Beaucoup de travail manuel était nécessaire, de même que la création et le téléchargement de fichiers CSV, ce qui entraînait parfois des pannes. Il s'agissait d'un processus laborieux qui se produisait plusieurs fois par jour. C'était un problème qu'il fallait résoudre le plus rapidement possible.

React pour le frontend, les programmations basées sur l'API sont rapides et à la volée.

Pourquoi Drupal et React? Drupal est un système de gestion de contenu doté d'une API robuste pour les services web, et React est un moyen simple de construire des interfaces utilisateur interactives. La combinaison de React et de Drupal fonctionne bien à plusieurs égards. Cependant, les sites alimentés par Drupal peuvent toujours utiliser React pour le développement de composants. Cette méthode est appelée "découplage progressif".

Voyons maintenant comment il est utilisé !

Ajouter React à nos composants : notre expérience

Pour commencer, nous devons télécharger et installer toutes les dépendances nécessaires :
yarn add react react-dom webpack webpack-cli @babel/cli @babel/core @babel/preset-env @babel/preset-react babel-loader webpack webpack-cli

Veuillez noter que nous n'allons pas discuter ici des spécificités du fonctionnement de chaque module ou de ceux qui devraient être ajoutés en tant que dépendances dev. En utilisant la page des paquets, vous pouvez voir ceci.

Configurons maintenant notre section de scripts package.json :

package json scripts

Avoir des configurations webpack distinctes pour le développement et la production est une bonne idée, alors gardez cela à l'esprit lorsque vous créez vos propres fichiers.

Ajoutez un simple webpack.config.js au mélange. React Hot Reloader avec Webpack Server, quelques CSS, SASS, et chargeurs de fichiers, ainsi que des plugins supplémentaires tels que ESLint et des minifieurs sont susceptibles d'être nécessaires dans votre travail. Nous ne nous étendrons pas sur ce point ici, car il s'agit d'une question de préférence personnelle.

webpack config

N'oublions pas nos configurations babel. Cela peut être fait en utilisant package.json ou .babelrc.

babel config

Nous nous rapprochons de plus en plus. Dans notre dossier dist, nous trouverons un app.bundle.js que nous pouvons utiliser comme bibliothèque dans notre thème lorsque nos scripts de construction sont exécutés. Pour faciliter la mise en œuvre, nous aimerions l'ajouter à l'ensemble de l'application. Notez que les performances de votre application peuvent être compromises si vous n'avez besoin de React que pour quelques composants dispersés sur des pages aléatoires.

app bundle js

Nous sommes prêts à commencer à travailler sur notre composant react proprement dit. Dans cette section, tout est possible.

src/index.jsx

react component

Enfin, nous ajouterons les balises nécessaires à l'affichage de notre composant React. À vous maintenant de le placer où vous le souhaitez !

html

Et voilà, nous avons réussi à intégrer React dans notre projet Drupal.

 

Fraport Bulgaria
"L'approche individuelle, les livraisons dans les délais et la documentation précise des développements ne sont qu'une petite partie des raisons de poursuivre le partenariat actif avec Bulcode 2016 Ltd. Nous avons le privilège et l'obligation de recommander l'équipe de Bulcode 2016 Ltd. comme étant extrêmement compétente, fiable et responsable dans la mise en œuvre des engagements."

S'ABONNER À NOTRE NEWSLETTER

Partager cet article :

S'ABONNER À NOTRE NEWSLETTER

Articles de blog connexes

    Pourquoi les startups hésitent à travailler avec une agence de développement de logiciels sur mesure - et comment nous répondons à toutes leurs préoccupations

    Blog

    Pourquoi les startups hésitent à travailler avec une agence de développement de logiciels sur mesure - et comment nous répondons à toutes leurs préoccupations

    <p>Les startups hésitent souvent à travailler avec des agences de logiciels pour des raisons de coût, de contrôle et de flexibilité. Découvrez comment les solutions logicielles sur mesure de Bulcode relèvent chaque défi, garantissant ainsi croissance et agilité.</p>

    Écrit par Svetoslava Angelova
    Nov 05, 20247 min read
    Construire une équipe Agile performante : Notre approche éprouvée

    Blog

    Construire une équipe Agile performante : Notre approche éprouvée

    Découvrez comment nous construisons des équipes Agile performantes en définissant des rôles clairs, en favorisant la collaboration et en utilisant des outils flexibles.

    Écrit par Svetoslava Angelova
    Aug 27, 202411 min read
    Drupal 11 : à quoi s'attendre ? Guide complet des nouvelles fonctionnalités et des améliorations

    Blog

    Drupal 11 : à quoi s'attendre ? Guide complet des nouvelles fonctionnalités et des améliorations

    Drupal 11 est sorti ! Dans cet article, découvrez ses fonctionnalités et améliorations passionnantes. Mettez-le à jour dès maintenant pour redéfinir votre stratégie numérique avec l'aide des experts de Bulcode.

    Écrit par Svetoslava Angelova
    Aug 05, 20249 min read
    Composants d'annuaire unique dans Drupal core : Une vue d'ensemble

    Blog

    Composants d'annuaire unique dans Drupal core : Une vue d'ensemble

    Découvrez comment les composants à répertoire unique (SDC) de Drupal Core rationalisent le processus de développement en encapsulant les fichiers liés aux composants dans un répertoire unique. Découvrez les avantages des SDC et suivez un guide étape par étape pour les mettre en œuvre dans vos projets Drupal.

    Écrit par Nikolay Tsekov
    Aug 07, 20244 min read
    Événements SCRUM

    Blog

    Événements SCRUM

    Scrum définit plusieurs événements (parfois appelés cérémonies) qui se déroulent au cours de chaque sprint : la planification du sprint, la mêlée quotidienne, la revue du sprint et la rétrospective du sprint.

    Écrit par Svetoslava Angelova
    Aug 07, 20233 min read
    Artéfacts Scrum

    Blog

    Artéfacts Scrum

    Dans le domaine du développement logiciel, le terme "artefact" fait référence aux informations que les parties prenantes et l'équipe scrum utilisent pour décrire un produit en cours de développement.

    Écrit par Svetoslava Angelova
    Aug 07, 20232 min read
    Drupal sans tête avec Next.js - un exemple simple à suivre

    Blog

    Drupal sans tête avec Next.js - un exemple simple à suivre

    La tendance récente, dans le développement web en général, et par conséquent dans le développement Drupal, est d'utiliser la technologie headless. La tendance récente, dans le développement web en général, et par conséquent dans le développement Drupal, est d'utiliser la technologie headless.

    Écrit par Mihail Shahov
    Aug 07, 20238 min read
    Embaucher des développeurs de logiciels spécialisés (équipes)

    Blog

    Embaucher des développeurs de logiciels spécialisés (équipes)

    Vous en avez assez d'augmenter les dépenses de votre équipe de développement interne ? Pourquoi ne pas faire appel à une équipe dédiée pour 40 à 60 % du coût ?

    Écrit par Mihail Shahov
    Aug 07, 20233 min read
    L'importance du bon partenaire de développement dans le cycle de vie de votre logiciel

    Blog

    L'importance du bon partenaire de développement dans le cycle de vie de votre logiciel

    La réussite à portée de main : L'art de choisir le partenaire idéal pour le développement de logiciels. Découvrez le rôle essentiel des partenaires dans le développement de logiciels, les secrets du retour sur investissement et restez à la pointe des tendances du secteur dans cet article incontournable.

    Écrit par Mihail Shahov
    Sep 26, 202310 min read
    Tutoriel sur le module Config split pour Drupal

    Blog

    Tutoriel sur le module Config split pour Drupal

    En tant que développeurs, nous sommes souvent amenés à travailler dans des environnements différents. Cela peut parfois conduire à des problèmes (inattendus). Dans Drupal 8, nous utilisons le système de configuration qui fonctionne plutôt bien, mais il y a des cas où les paramètres pour l'environnement local et tout autre environnement devraient être différents.

    Écrit par Ivaylo Tsandev
    Aug 08, 20238 min read
    Dévoiler le duo de puissance : Next.js comme frontend Headless de Drupal 10

    Blog

    Dévoiler le duo de puissance : Next.js comme frontend Headless de Drupal 10

    Découvrez la synergie dynamique entre Drupal 10 et Next.js, alors que cette puissante combinaison redessine le paysage du développement web. Next.js, un framework open-source basé sur React, est intégré de manière transparente en tant que frontend headless de Drupal 10, offrant une pléthore d'avantages. De l'amélioration des performances grâce à des fonctionnalités telles que le fractionnement automatique du code et le rendu côté serveur à la conception flexible et aux capacités de référencement, cette collaboration permet aux développeurs de créer des applications web très performantes, évolutives et visuellement attrayantes. La gestion efficace du contenu de Drupal 10 associée à l'adaptabilité de Next.js aux tendances garantit une approche de développement de pointe, positionnant ce tandem à l'avant-garde des pratiques modernes de développement web. Embrassez l'avenir avec la combinaison Drupal 10 et Next.js, redéfinissant la façon dont nous abordons et créons des expériences en ligne dynamiques.

    Écrit par Todor Kolev
    Feb 09, 20246 min read
    Tutoriel du module Config ignore pour Drupal

    Blog

    Tutoriel du module Config ignore pour Drupal

    Parfois, nous ne voulons pas que nos configurations soient partagées dans la base de code. Que faire dans ce cas ?

    Écrit par Ivaylo Tsandev
    Aug 08, 20237 min read

    PRENDRE CONTACT

    Vous avez un projet à lancer ?