सीरियलाइज़ किए जा सकने वाले लेबल, सामान्य लेबल के जैसे ही काम करते हैं. हालांकि, ये एक्सएमएल में भी सीरियलाइज़ किए जा सकते हैं. इनका इस्तेमाल सिर्फ़ तब किया जाना चाहिए, जब किसी लेबल के कॉन्टेंट में प्रोग्राम के हिसाब से बदलाव किया जा रहा हो और आपको उसे एक्सएमएल में सीरियलाइज़ करना हो.
क्रम से लगाया जा सकने वाला लेबल फ़ील्ड
छोटा किया गया ब्लॉक, जिसमें सीरीयलाइज़ किया जा सकने वाला लेबल फ़ील्ड है
शॉर्ट वीडियो
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
सीरियलाइज़ किए जा सकने वाले लेबल फ़ील्ड का एक्सएमएल ऐसा दिखता है:
<field name="FIELDNAME">text</field>
field
नोड के name
एट्रिब्यूट में, सीरियलाइज़ किए जा सकने वाले लेबल फ़ील्ड का रेफ़रंस देने वाली स्ट्रिंग होती है. साथ ही, नोड का इनर टेक्स्ट, फ़ील्ड पर लागू की जाने वाली वैल्यू होती है.
वैलिडेटर (पुष्टि करने वाले प्रोग्राम)
सीरीयलाइज़ किए जा सकने वाले लेबल फ़ील्ड में, पुष्टि करने वाले टूल काम नहीं करते. इसकी वजह यह है कि उपयोगकर्ता इनमें बदलाव नहीं कर सकता.