Campi delle etichette serializzabili

Le etichette serializzabili funzionano esattamente come le etichette normali, ma sono anche in formato XML. Devono essere utilizzati solo se modifichi i contenuti di un'etichetta in modo programmatico e vuoi che sia serializzata in XML.

Campo Etichetta serializzabile

Campo Etichetta serializzabile in un blocco compresso

Creazione

JSON

{
  "type": "example_serializable_label",
  "message0": "%1",
  "args0": [
    {
      "type": "field_label_serializable",
      "name": "FIELDNAME",
      "text": "a serializable label"
    }
  ]
}

JavaScript

Blockly.Blocks['example_serializable_label'] = {
  init: function() {
    this.appendDummyInput()
        .appendField(new Blockly.FieldLabelSerializable("a serializable label"), "FIELDNAME");
  }
};

Il campo dell'etichetta serializzabile include un valore facoltativo e una stringa facoltativa della classe CSS. Entrambi vengono impostati in modo predefinito su una stringa vuota.

Serializzazione

JSON

Il codice JSON per un campo etichetta serializzabile ha il seguente aspetto:

{
  "fields": {
    "FIELDNAME": text
  }
}

Dove FIELDNAME è una stringa che fa riferimento a un campo etichetta serializzabile e il valore è il valore da applicare al campo. Il valore segue le stesse regole del valore del costruttore.

XML

L'XML per un campo etichetta serializzabile ha il seguente aspetto:

<field name="FIELDNAME">text</field>

L'attributo name del nodo field contiene una stringa che fa riferimento a un campo etichetta serializzabile e il testo interno del nodo è il valore da applicare al campo.

Strumenti di convalida

I campi delle etichette serializzabili non supportano gli strumenti di convalida, perché non sono modificabili da un utente.