Accueil Technologie
Comment construire un composant Web en utilisant Stencil.js

Comment construire un composant Web en utilisant Stencil.js

Les composants web sont un ensemble de technologies qui vous permettent de créer des éléments réutilisables et de les réutiliser dans différentes applications web.


Stencil.js est un compilateur qui génère des composants web compatibles avec tous les navigateurs modernes. Il fournit des outils et des API pour vous aider à créer des composants web rapides, efficaces et évolutifs.


Démarrer avec Stencil.js

Pour commencer à utiliser Stencil.js, vous devez d’abord l’initialiser sur votre ordinateur.

Pour ce faire, exécutez la commande suivante dans votre terminal node.js :

 npm init stencil

Après avoir exécuté la commande, une invite apparaîtra sur votre écran pour vous permettre de sélectionner le projet avec lequel vous voulez commencer :

Une invite de démarrage du modèle stencil.js dans le terminal

Pour continuer, choisissez l’option composant, entrez le nom de votre projet et confirmez votre sélection :

Une invite de démarrage de stencil.js avec un message de confirmation

Ensuite, allez dans le répertoire de votre projet et installez vos dépendances en exécutant ces commandes :

 cd first-stencil-project
npm install

Création d’un nouveau composant Web

Pour créer un nouveau composant Web dans Stencil.js, créez un chemin d’accès au dossier comme suit src/composants. Le dossier components contiendra un fichier TypeScript nommé d’après votre composant, car Stencil.js utilise le langage TypeScript et JSX pour le développement de composants. Le dossier contiendra également un fichier CSS qui contient le style de votre composant.

Par exemple, si vous souhaitez créer un composant appelé « mon-bouton », créez un fichier appelé mon-bouton.tsx et un fichier CSS appelé mon-bouton.css. Dans le fichier my-button.tsx définissez votre composant à l’aide de l’API Stencil.js :

 import { Component, h } from '@stencil/core';

@Component({
  tag: 'my-button',
  styleUrl: 'my-button.css',
  shadow: true,
})

export class MyButton {
  render() {
    return (
      <button>Click Me</button>
    );
  }
}

Ce code importe l’API Composant et h fonctions de Stencil.js. Les fonctions Composant définit le composant, tandis que la fonction h La fonction « HTML » crée son balisage à l’aide du langage HTML.

Définissez votre composant à l’aide de la fonction @Composant qui prend un objet avec trois propriétés : balise, styleUrlet ombre.

Le tag contient le nom de la balise du composant. La propriété styleUrl spécifie le fichier CSS permettant de styliser l’élément personnalisé. Enfin, la propriété shadow est une valeur booléenne qui indique si le composant utilisera Shadow DOM pour encapsuler les styles et le comportement de l’élément personnalisé. Dans la méthode render, vous créez un élément bouton.

En plus de la propriété styleUrl vous pouvez utiliser deux autres propriétés pour donner du style à votre composant : style et styleUrls.

Le style définit les styles en ligne du composant. Elle prend une valeur de type chaîne qui représente les styles CSS du composant :

 import { Component, h } from '@stencil/core';

@Component({
  tag: 'my-button',
  style: `
    button {
      padding: 1rem 0.5rem;
      border-radius: 12px;
      font-family: cursive;
      border: none;
      color: #e2e2e2;
      background-color: #333333;
      font-weight: bold;
    }
`,
  shadow: true,
})

export class MyButton {
  render() {
    return (
      <button>Click Me</button>
    );
  }
}

La propriété styleUrls spécifie plusieurs fichiers CSS externes pour styliser le composant. Elle contient un tableau de chaînes de caractères représentant les chemins d’accès aux fichiers CSS :

 import { Component, h } from '@stencil/core';

@Component({
  tag: 'my-button',
  styleUrls: ['my-button.css', 'another-button.css'],
  shadow: true,
})

export class MyButton {
  render() {
    return (
      <button>Click Me</button>
    );
  }
}

Rendu du composant Web

Une fois que vous avez créé votre composant Web, vous pouvez le rendre dans un fichier HTML en ajoutant une balise d’élément personnalisée. Voici comment vous pouvez inclure le composant my-button :

 <!DOCTYPE html>
<html dir="ltr" lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=5.0" />
    <link href="<https://fonts.googleapis.com/css2?family=Montserrat&display=swap>" rel="stylesheet">
    <title>Stencil Component Starter</title>
    <script type="module" src="/build/first-stencil-project.esm.js"></script>
    <script nomodule src="/build/first-stencil-project.js"></script>
  </head>
  <body>
    <my-button></my-button>
  </body>
</html>

Vous pouvez désormais créer des composants Web à l’aide de Stencil.js

Stencil.js est un outil puissant pour créer des composants web rapides, efficaces et évolutifs. Son API et ses outils facilitent la création et la gestion des composants Web, et sa compatibilité avec tous les navigateurs modernes garantit le bon fonctionnement de vos composants dans différentes applications Web.

Les composants web devenant de plus en plus populaires, Stencil.js est un framework que vous devriez considérer pour construire des éléments réutilisables pour le web.

Leave your vote

0 0 votes
Évaluation de l'article
S’abonner
Notification pour
guest
0 Commentaires
Le plus ancien
Le plus récent Le plus populaire
Commentaires en ligne
Afficher tous les commentaires

Log In

Forgot password?

Don't have an account? Register

Forgot password?

Enter your account data and we will send you a link to reset your password.

Your password reset link appears to be invalid or expired.

Log in

Privacy Policy

Add to Collection

No Collections

Here you'll find all collections you've created before.

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x