Serileştirilebilir etiket alanları

Serileştirilebilir etiketler, XML'ye de serileştirilmesi dışında normal etiketlerle aynı şekilde çalışır. Bu işlevler yalnızca bir etiketin içeriğini programatik olarak düzenliyorsanız ve XML'ye seri hale getirmek istiyorsanız kullanılmalıdır.

Serileştirilebilir etiket alanı

Serileştirilebilir "a serializable label" etiketine sahip bir blok. Görsel olarak, normal bir etikete sahip bloktan farkı yoktur.

Daraltılmış bir bloktaki serileştirilebilir etiket alanı

Aynı blok daraltıldıktan sonra. "a serializable label" (serileştirilebilir bir etiket) etiketine sahiptir ve daraltıldığını göstermek için sağ kenarı tırtıklıdır.

içerik üretimi

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

Serializable etiket alanı, isteğe bağlı bir değer ve isteğe bağlı bir CSS sınıfı dizesi alır. Her ikisi de varsayılan olarak boş dizeye ayarlanır.

Serileştirme

JSON

Serileştirilebilir bir etiket alanının JSON'u şu şekilde görünür:

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

Burada FIELDNAME, serileştirilebilir bir etiket alanına referans veren bir dizedir ve değer, alana uygulanacak değerdir. Değer, oluşturucu değeriyle aynı kurallara uyar.

XML

Serileştirilebilir bir etiket alanının XML'si şu şekilde görünür:

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

field düğümünün name özelliği, serileştirilebilir bir etiket alanına referans veren bir dize içeriyor ve düğümün iç metni, alana uygulanacak değerdir.

Doğrulayıcılar

Serileştirilebilir etiket alanları, kullanıcı tarafından düzenlenemediği için doğrulayıcıları desteklemez.