Skip to main content

Documentation du Widget HTML

Aperçu​

Le widget HTML vous permet d'intégrer du contenu HTML personnalisé directement dans votre interface. Ce widget offre une flexibilité complète pour afficher du contenu riche, des mises en page personnalisées ou intégrer des composants HTML tiers tout en maintenant un contrôle total sur le style et le comportement.

HTML Widget

Configuration de Base​

Paramètres Globaux​

Nom​

  • Champ: Identifiant du nom du widget
  • Utilisation: DĂ©finissez un nom descriptif pour une identification facile dans l'arborescence des widgets
  • Exemple: "En-tĂŞte personnalisĂ©", "Description du produit"

Variable/Modèle​

  • Champ: Liaison du modèle pour le widget
  • Utilisation: Liez le widget Ă  un modèle de donnĂ©es ou une variable pour le contenu dynamique
  • Validation: Le système valide les noms de modèles et affiche des avertissements pour les problèmes potentiels
HTML Basic Configuration

Éditeur de Contenu HTML​

Bouton Modifier HTML​

  • Localisation: Section GĂ©nĂ©ral → Modifier HTML
  • Fonction: Ouvre un Ă©diteur de code pour Ă©crire du contenu HTML personnalisĂ©
  • FonctionnalitĂ©s:
    • Coloration syntaxique
    • ComplĂ©tion de code
    • DĂ©tection d'erreurs
    • CapacitĂ©s d'aperçu

HTML Supporté​

  • ÉlĂ©ments et attributs HTML5 standard
  • Style CSS inline
  • IntĂ©gration JavaScript (avec considĂ©rations de sĂ©curitĂ© de la plateforme)
  • Contenu dynamique utilisant des variables de modèle

Variables de Modèle​

Accédez aux données dynamiques dans votre contenu HTML:

HTML Template Variables

Configuration de la Validation​

Validation Basée sur l'Écran​

Configurez le comportement du widget sur différents écrans/contextes:

Disponible​

  • Objectif: ContrĂ´le si le widget existe dans le DOM
  • Options:
    • Bascule boolĂ©enne (true/false)
    • Condition avancĂ©e utilisant des expressions JavaScript

Visible​

  • Objectif: ContrĂ´le la visibilitĂ© du widget (afficher/masquer)
  • Options:
    • Bascule boolĂ©enne
    • Condition avancĂ©e avec des variables de modèle
  • Exemple AvancĂ©: userRole == 'admin'

Requis​

  • Objectif: Rend le widget obligatoire pour la validation du formulaire
  • Remarque: Principalement utilisĂ© lorsque le widget HTML contient des Ă©lĂ©ments de formulaire
  • Options: Expression boolĂ©enne ou conditionnelle

Désactiver​

  • Objectif: DĂ©sactive les Ă©lĂ©ments interactifs dans le widget
  • Options: Expression boolĂ©enne ou conditionnelle
HTML Screen-Based Validation

Configuration du Style​

  • Champ: Noms des classes
  • Utilisation: Appliquez les classes CSS prĂ©dĂ©finies
  • Format: Noms de classes sĂ©parĂ©s par des espaces
HTML Style

Structure du Modèle Widget​

Composant Généré​

Le widget génère un composant Vue.js avec:

  • ID de composant unique
  • Liaison de donnĂ©es rĂ©active
  • Rendu conditionnel
  • CapacitĂ©s de gestion des Ă©vĂ©nements

Structure du DOM​

<div
id="[widgetId]"
v-if="[visibilityCondition]"
class="[staticClasses]"
:class="[dynamicClasses]"
>
<!-- Votre contenu HTML personnalisé -->
</div>

Exemples d'Intégration​

Contenu HTML Basique​

<div class="custom-section">
<h2>Bienvenue {{SF_connectedUser.firstName}}</h2>
<p>Dernière connexion: {{models.lastLogin }}</p>
</div>

Éléments Interactifs​

<div class="interactive-widget" style="display: flex; align-items: center; gap: 12px;">
<el-button type="primary" size="large" @click="customFunction">
Cliquer
</el-button>

<el-input v-model="models.inputValue" placeholder="Entrez du texte" clearable style="max-width: 220px;" />
</div>

Contenu Conditionnel​

<div v-if="models.isAdmin">
<h3>Panneau d'Administration</h3>
<div class="admin-controls">
<!-- Contenu spécifique à l'admin -->
</div>
</div>

Meilleures Pratiques​

Considérations de Sécurité​

  • Assainissez le contenu gĂ©nĂ©rĂ© par l'utilisateur
  • Évitez le JavaScript inline en production
  • Utilisez les fonctionnalitĂ©s de sĂ©curitĂ© fournies par la plateforme
  • Validez toutes les donnĂ©es dynamiques

Optimisation des Performances​

  • Minimisez la complexitĂ© du DOM
  • Utilisez des sĂ©lecteurs CSS efficaces
  • Mettez en Ĺ“uvre le chargement paresseux pour le contenu lourd
  • Optimisez les images et les mĂ©dias

Accessibilité​

  • Incluez les attributs ARIA appropriĂ©s
  • Assurez-vous du support de la navigation au clavier
  • Fournissez un texte alternatif pour les images
  • Maintenez une hiĂ©rarchie de titres appropriĂ©e

Maintenabilité​

  • Utilisez une structure HTML sĂ©mantique
  • Commentez les fonctionnalitĂ©s complexes
  • Suivez les conventions de dĂ©nomination cohĂ©rentes
  • SĂ©parez les prĂ©occupations (structure, style, comportement)

Dépannage​

Problèmes Courants​

Widget ne s'Affiche Pas​

  • VĂ©rifiez les conditions de visibilitĂ©
  • VĂ©rifiez les liaisons de modèle
  • Assurez-vous de la syntaxe HTML appropriĂ©e
  • VĂ©rifiez la console du navigateur pour les erreurs

Problèmes de Style​

  • VĂ©rifiez les noms des classes CSS
  • VĂ©rifiez les styles en conflit
  • Assurez-vous de la compatibilitĂ© de la conception rĂ©active
  • Testez sur diffĂ©rentes tailles d'Ă©cran

Contenu Dynamique ne se Met Pas à Jour​

  • Confirmez la syntaxe de liaison du modèle
  • VĂ©rifiez les problèmes de rĂ©activitĂ©
  • VĂ©rifiez les connexions aux sources de donnĂ©es
  • VĂ©rifiez les erreurs de la console JavaScript

Mode Débogage​

Activez le mode débogage pour:

  • Afficher la structure du composant gĂ©nĂ©rĂ©
  • Surveiller les mises Ă  jour de liaison de donnĂ©es
  • Suivre l'exĂ©cution des règles de validation
  • Inspecter les modifications du DOM

Fonctionnalités Avancées​

Intégration de Formulaire​

Incluez les éléments de formulaire qui s'intègrent avec le système de formulaire de la plateforme:

<div class="form-section">
<label for="customField">Saisie Personnalisée:</label>
<el-input
id="customField"
v-model="model.customField"
placeholder="Entrez une valeur"
clearable
></el-input>
</div>

Ce widget HTML offre une flexibilité maximale tout en maintenant l'intégration avec les systèmes de validation, de style et de liaison de données de la plateforme. Utilisez-le lorsque les widgets standard ne répondent pas à vos exigences spécifiques ou lorsque vous avez besoin d'un contrôle total sur la couche de présentation.