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.