ช่องตัวเลข

ฟิลด์ตัวเลขจะจัดเก็บตัวเลขเป็น value และสตริงเป็น text value จะเป็นตัวเลขที่ถูกต้องเสมอตามที่กำหนดไว้ในข้อจำกัดที่ระบุไว้ ในช่องตอนสร้าง ส่วนข้อความจะเป็นสตริงใดก็ได้ที่ป้อนลงในเอดิเตอร์

ฟิลด์ตัวเลข

บล็อกที่มีป้ายกำกับ "number:" และฟิลด์ตัวเลขที่ตั้งค่าเป็น
100

ฟิลด์ตัวเลขที่เปิดเครื่องมือแก้ไข

บล็อกเดียวกันที่มีฟิลด์ที่
กำลังแก้ไข

ฟิลด์หมายเลขในบล็อกที่ยุบ

บล็อกเดียวกันหลังจากยุบ โดยมีป้ายกำกับ "number: 100" และ
ขอบด้านขวาไม่สม่ำเสมอเพื่อแสดงว่า
ยุบอยู่

การสร้างวิดีโอ

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

ตัวสร้างตัวเลขจะรับข้อมูลต่อไปนี้

  • value ไม่บังคับ
  • min (ไม่บังคับ)
  • max (ไม่บังคับ)
  • precision (ไม่บังคับ)
  • validator (ไม่บังคับ)

value ควรแปลงเป็นตัวเลข หากไม่มี ระบบจะใช้ 0

การเรียงอันดับ

JSON

JSON สำหรับฟิลด์ตัวเลขจะมีลักษณะดังนี้

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

โดยที่ FIELDNAME เป็นสตริงที่อ้างอิงฟิลด์ตัวเลข และ ค่าคือค่าที่จะใช้กับฟิลด์ ค่า เป็นไปตามกฎเดียวกันกับค่าของตัวสร้าง

XML

XML สำหรับฟิลด์ตัวเลขมีลักษณะดังนี้

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

แอตทริบิวต์ name ของโหนด field มีสตริงที่อ้างอิงฟิลด์ตัวเลข และ text ภายในของโหนดคือ value ที่จะใช้กับฟิลด์ ค่าข้อความด้านในเป็นไปตามกฎเดียวกันกับค่าของตัวสร้าง

ข้อจำกัด

คุณตั้งค่าข้อจํากัดได้ในการกําหนดฟิลด์ หรือโดยใช้ฟังก์ชัน setConstraints

ค่าต่ำสุด

ค่า min จะกำหนดค่าที่เล็กที่สุด/เป็นลบมากที่สุดที่ฟิลด์อนุญาตให้มี

ค่าสูงสุด

ค่า max จะกำหนดค่าที่ใหญ่ที่สุด/เป็นบวกมากที่สุดที่ฟิลด์สามารถมีได้

การปัดเศษ

precision จะปัดเศษค่าให้เป็นค่าทวีคูณที่ใกล้เคียงที่สุดของความแม่นยำ ซึ่งใช้เพื่อทำให้ช่องยอมรับเฉพาะค่าที่เป็นทวีคูณของ 0.01, 10, 42 ฯลฯ

ข้อจำกัดทั่วไป

ตัวเลขที่เป็นบวก

หากต้องการบังคับให้ฟิลด์ยอมรับเฉพาะตัวเลขบวก ให้ตั้งค่า min เป็น 1

จำนวนเต็ม

หากต้องการบังคับให้ฟิลด์ยอมรับเฉพาะจำนวนเต็ม ให้ตั้งค่า precision เป็น 1

การสร้างเครื่องมือตรวจสอบหมายเลข

ค่าของฟิลด์ตัวเลขคือตัวเลข ดังนั้นเครื่องมือตรวจสอบใดๆ จะต้องยอมรับ number และ ส่งคืน number, null หรือ undefined

ต่อไปนี้คือตัวอย่างเครื่องมือตรวจสอบที่เปลี่ยนค่าเป็น 0 หรือ 1 ขึ้นอยู่กับว่าค่าเป็นคี่หรือคู่

function(newValue) {
  return newValue % 2;
}

GIF แบบเคลื่อนไหวที่แสดงการทำงานของเครื่องมือตรวจสอบ เมื่อผู้ใช้พิมพ์ 10 และคลิกที่อื่น ระบบจะตั้งค่าช่องเป็น 0 เมื่อผู้ใช้พิมพ์ 11 และคลิกที่อื่น ระบบจะตั้งค่าช่องเป็น 1