Campos de etiquetas serializables

Las etiquetas serializables funcionan exactamente igual que las etiquetas normales excepto que también se serializan en XML. Solo deben usarse si estás editando el contenido de una etiqueta de forma programática y deseas que se serializa en XML.

Campo de etiqueta serializable

Campo de etiqueta serializable en un bloque contraído

Creación

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");
  }
};

El campo de etiqueta serializable toma un valor y un CSS opcionales de la clase. En ambos casos, se establece una cadena vacía de forma predeterminada.

Serialización

JSON

El JSON de un campo de etiqueta serializable se ve de la siguiente manera:

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

Donde FIELDNAME es una cadena que hace referencia a un campo de etiqueta serializable. el valor es el valor que se aplicará al campo. El valor sigue las mismas reglas que el valor del constructor.

XML

El XML de un campo de etiqueta serializable se ve de la siguiente manera:

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

El atributo name del nodo field contiene una cadena que hace referencia a un elemento serializable. etiqueta y el texto interno del nodo es el valor que se aplicará al campo.

Validadores

Los campos de etiquetas serializables no admiten validadores, ya que no son que el usuario puede editar.