シリアル化可能なラベルは、XML にもシリアル化されるという点を除き、通常のラベルとまったく同じように機能します。ラベルのコンテンツをプログラムで編集し、XML にシリアル化する場合にのみ使用してください。
シリアル化可能なラベル フィールド
折りたたまれたブロックのシリアル化可能なラベル フィールド
作成
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");
}
};
シリアル化可能なラベル フィールドは、オプションの値とオプションの CSS クラス文字列を受け取ります。どちらもデフォルトは空の文字列です。
シリアル化
JSON
シリアル化可能なラベルフィールドの JSON は次のようになります。
{
"fields": {
"FIELDNAME": text
}
}
ここで、FIELDNAME
はシリアル化可能なラベル フィールドを参照する文字列で、値はフィールドに適用する値です。値はコンストラクタの値と同じルールに従います。
XML
シリアル化可能なラベルフィールドの XML は次のようになります。
<field name="FIELDNAME">text</field>
field
ノードの name
属性には、シリアル化可能なラベル フィールドを参照する文字列が含まれ、ノードの内部テキストはフィールドに適用する値です。
バリデータ
シリアル化可能なラベルフィールドはユーザーが編集できないため、バリデータはサポートしていません。