Champs de libellé

Un champ de libellé stocke une chaîne en tant que value et une chaîne en tant que text. Les value et text d'un champ de libellé sont toujours identiques.

Champ de libellé

Bloc avec deux lignes. Le premier porte le libellé "a label" (un libellé) et le second porte le libellé "and another label" (et un autre libellé).

Champ de libellé dans le bloc réduit

Le même bloc après avoir été réduit. Il comporte une seule ligne, le libellé "un libellé et un autre libellé", et un bord droit irrégulier pour indiquer qu'il est réduit.

Création

JSON

{
  "type": "example_label",
  "message0": "a label %1 and another label",
  "args0": [
    {
      "type": "input_dummy"
    }
  ]
}

Tout texte de message entre les arguments d'interpolation devient une chaîne de libellé. Vous pouvez également interpoler explicitement les libellés, soit en tant qu'objet, soit en tant que texte. Cette pratique est généralement déconseillée, car elle rend la traduction plus difficile.

{
  "type": "example_label",
  "message0": "%1 %2 %3",
  "args0": [
    {
      "type": "field_label",
      "text": "a label"
    },
    {
      "type": "input_dummy"
    },
    "and another label"
  ]
}

JavaScript

Blockly.Blocks['example_label'] = {
  init: function() {
    this.appendDummyInput()
        .appendField(new Blockly.FieldLabel('a label'));
    this.appendDummyInput()
        .appendField('and another label');
  }
};

La fonction appendField accepte les objets FieldLabel et, plus couramment, les chaînes pour créer des libellés.

Le champ de libellé accepte une valeur facultative et une chaîne de classe CSS facultative. Les deux valeurs sont définies par défaut sur une chaîne vide.

Sérialisation

Les champs de libellé ne sont pas sérialisables.

Si vous souhaitez que votre libellé soit sérialisé, car il est modifié de manière programmatique, consultez le champ Libellé sérialisable.

Programmes de validation

Les champs de libellés ne sont pas compatibles avec les validateurs, car ils ne sont pas modifiables.