Remplir le code HTML avec Mustache
Ne vous sentez pas intimidé par cette page. La création de paquet créera des valeurs par défaut pour cela, que vous pouvez utiliser telles quelles pour vos cartes. Ceci est seulement pour les personnes voulant plus de personnalisation pour leurs cartes.
La syntaxe Mustache est un système de modèles populaire utilisé pour créer du HTML, des fichiers de configuration, ou toute autre sortie de texte.
Il est basé sur une syntaxe de modèle sans logique, ce qui signifie qu'il se concentre sur la présentation sans intégrer de logique de programmation. Les modèles et les données sont traités ensemble pour produire une sortie. Les modèles Mustache sont distinctifs pour leurs doubles accolades, {{ }}, qui marquent les points d'insertion pour les données. Cette simplicité et cette portabilité font de Mustache une option attrayante pour nos modèles de code propres, clairs et maintenables.
Syntaxe de base
Dans votre code HTML, vous remplacez les valeurs provenant de vos entrées par la balise {{FIELD_NAME}}. Remplacez FIELD_NAME par le nom du champ qui contient les valeurs que vous voulez, en respectant les majuscules et minuscules (sensible à la casse).
Il est facile de tester votre code HTML+Mustache si vous avez déjà quelques entrées dans votre paquet, en cliquant sur le bouton d'aperçu ( ), en bas à gauche de la page d'édition de modèle.
Le côté question doit contenir une et une seule balise commençant par un point d'interrogation, par exemple {{?Term}}. Cela indiquera au générateur de modèle non seulement d'afficher la valeur du champ question "Term" de l'entrée, mais il utilisera ce champ comme condition pour créer les cartes. Cela signifie que toutes les entrées ayant une valeur dans le champ "Term" auront une carte de ce modèle, mais pas celles avec une valeur vide. Le côté réponse ne peut avoir aucune balise avec un point d'interrogation.
Si le champ question est déclaré comme une liste, seuls les éléments du tableau qui ne sont pas vides créeront des cartes.
Les côtés question et réponse peuvent alors inclure des balises pour afficher d'autres valeurs de toutes les valeurs de champ de l'entrée. Si le champ question est une liste, la valeur prise aura le même index que celui de la question pour un champ qui est aussi une liste, ou juste la valeur unique quand ce n'est pas une liste. Si le champ question n'est pas une liste, alors les autres champs ne peuvent pas être des listes, sauf en utilisant une balise FOR_EACH (voir ci-dessous).
Logique supplémentaire
Balises IF / IF_NOT
L'affichage d'une section du code HTML peut être rendu conditionnel en utilisant :
{{#FIELD_NAME}}
Code HTML affiché si la valeur dans FIELD_NAME N'EST PAS VIDE
{{/FIELD_NAME}}ou
{{^FIELD_NAME}}
Code HTML affiché si la valeur dans FIELD_NAME EST VIDE
{{/FIELD_NAME}}Si le champ question est une liste, la valeur vérifiée aura le même index que celui de la question pour le champ IF ou IF_NOT qui est aussi une liste, ou juste la valeur unique quand ce n'est pas une liste. Si le champ question n'est pas une liste, le champ IF ou IF_NOT ne peut pas être une liste.
Balise FOR_EACH
Vous pouvez boucler l'affichage d'une section du code HTML en utilisant :
{{$FIELD_NAME}}
Code HTML affiché autant de fois que chaque valeur dans la liste FIELD_NAME N'EST PAS VIDE
{{/FIELD_NAME}}La boucle dépend des valeurs pour le champ FOR_EACH, sans considération pour le champ question. Les balises à l'intérieur du FOR_EACH qui commencent par un "@" (par exemple {{@FIELD_NAME_2}}) auront le même index de tableau que le champ FOR_EACH, sinon (par exemple {{FIELD_NAME_3}}) suivront le comportement par défaut (ils dépendront du champ question).