Sayı alanları

Bir sayı alanında sayı, value, dize ise text olarak depolanır. value değeri, oluşturma sırasında alana verilen kısıtlamalarla tanımlanan geçerli bir sayıdır. Metni, düzenleyicisine girilen herhangi bir dize olabilir.

Sayı alanı

Düzenleyici açık olan sayı alanı

Daraltılmış bloktaki sayı alanı

içerik üretimi

JSON

{
  "type": "example_number",
  "message0": "number: %1",
  "args0": [
    {
      "type": "field_number",
      "name": "FIELDNAME",
      "value": 100,
      "min": 0,
      "max": 100,
      "precision": 10
    }
  ]
}

JavaScript

Blockly.Blocks['example_number'] = {
  init: function() {
    this.appendDummyInput()
        .appendField("number:")
        .appendField(new Blockly.FieldNumber(100, 0, 100, 10), 'FIELDNAME');
  }
};

Sayı oluşturucu şunu alır:

  • isteğe bağlı bir value
  • isteğe bağlı bir min
  • isteğe bağlı bir max
  • isteğe bağlı bir hassas
  • isteğe bağlı validator

value bir sayıya yayınlanmalıdır. Aksi takdirde 0 kullanılır.

Serileştirme

JSON

Bir sayı alanının JSON'ı şöyle görünür:

{
  "fields": {
    "FIELDNAME": 0
  }
}

Burada FIELDNAME, bir sayı alanına referans veren bir dizedir. Değer ise alana uygulanacak değerdir. Değer, oluşturucu değeriyle aynı kuralları izler.

XML

Bir sayı alanının XML'i şöyle görünür:

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

field düğümünün name özelliği, bir sayı alanına referans veren bir dize içerir ve düğümün iç text, alana uygulanacak value öğesidir. İç metin değeri, oluşturucu değeriyle aynı kuralları izler.

Sınırlamalar

Kısıtlamalar, alan tanımında veya setConstraints işlevi kullanılarak ayarlanabilir.

Minimum değer

min değeri, alanın içermesine izin verilen en küçük/en negatif değeri ayarlar.

Maksimum değer

max değeri, alanın içermesine izin verilen en büyük/en pozitif değeri ayarlar.

Yuvarlama

precision, değeri en yakın hassasiyet katlarına yuvarlar. Bu, alanın yalnızca 0,01, 10, 42 gibi katları kabul etmesini sağlamak için kullanılabilir.

Yaygın kısıtlamalar

Pozitif sayılar

Alanınızı yalnızca pozitif sayıları kabul etmeye zorlamak için min değerini 1 olarak ayarlayın.

Tam sayılar

Alanınızı yalnızca tam sayıları kabul etmeye zorlamak için precision değerini 1 olarak ayarlayın.

Sayı doğrulayıcısı oluşturma

Sayı alanının değeri sayıdır. Bu nedenle, tüm doğrulayıcılar bir number kabul etmeli ve bir number, null veya undefined döndürmelidir.

Değerin tek veya çift olmasına bağlı olarak değeri 0 ya da 1 olacak şekilde değiştiren bir doğrulayıcı örneğini burada bulabilirsiniz.

function(newValue) {
  return newValue % 2;
}