可序列化標籤的運作方式與一般標籤完全相同,不過它們也會序列化為 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
屬性包含參照可序列化標籤欄位的字串,而節點的內部文字是套用至該欄位的值。
驗證工具
可序列化標籤欄位不支援驗證工具,因為使用者無法編輯。