Kolom angka

Kolom angka menyimpan angka sebagai value, dan string sebagai text. value selalu berupa angka yang valid seperti yang ditentukan oleh batasan yang diberikan ke kolom saat pembuatan; teksnya dapat berupa string apa pun yang dimasukkan ke dalam editornya.

Kolom angka

Kolom angka dengan editor terbuka

Kolom angka pada blok yang diciutkan

yang Dipicu oleh Tren

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

Konstruktor angka mengambil hal berikut:

value harus ditransmisikan ke angka. Jika tidak, 0 akan digunakan.

Serialisasi

JSON

JSON untuk kolom angka terlihat seperti berikut:

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

Dengan FIELDNAME adalah string yang merujuk ke kolom angka, dan nilainya adalah nilai yang akan diterapkan ke kolom tersebut. Nilai ini mengikuti aturan yang sama dengan nilai konstruktor.

XML

XML untuk bidang angka terlihat seperti ini:

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

Atribut name node field berisi string yang merujuk ke kolom angka, dan text bagian dalam node adalah value yang akan diterapkan ke kolom. Nilai teks bagian dalam mengikuti aturan yang sama dengan nilai konstruktor.

Batasan

Batasan dapat ditetapkan di definisi kolom, atau dengan menggunakan fungsi setConstraints.

Nilai minimum

Nilai min menetapkan nilai terkecil/paling negatif yang boleh dimuat oleh kolom.

Nilai maksimum

Nilai max menetapkan nilai terbesar/paling positif yang diizinkan untuk dimuat di kolom.

Pembulatan

precision akan membulatkan nilai ke kelipatan presisi terdekat. Ini dapat digunakan untuk membuat kolom hanya menerima kelipatan 0,01, 10, 42, dll.

Batasan umum

Angka positif

Untuk memaksa kolom agar hanya menerima bilangan positif, tetapkan nilai min ke 1.

Bilangan bulat

Untuk memaksa kolom agar hanya menerima bilangan bulat, setel precision ke 1.

Membuat validator angka

Nilai kolom angka adalah angka, sehingga setiap validator harus menerima number dan menampilkan number, null, atau undefined.

Berikut ini contoh validator yang mengubah nilai menjadi 0 atau 1, bergantung pada apakah nilainya ganjil atau genap.

function(newValue) {
  return newValue % 2;
}