blockly > FieldVariable

คลาส FieldVariable

คลาสสําหรับช่องแบบเลื่อนลงของตัวแปร

ลายเซ็น:

export declare class FieldVariable extends FieldDropdown 

ขยายจาก: FieldDropdown

ผู้ผลิต

ผู้ผลิต คีย์ตัวปรับแต่ง คำอธิบาย
(constructor)(varName, validator, variableTypes, defaultType, config) สร้างอินสแตนซ์ใหม่ของคลาส FieldVariable

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ คีย์ตัวปรับแต่ง ประเภท คำอธิบาย
defaultVariableName สตริง
menuGenerator_ protected MenuGenerator | undefined
ต่อเนื่อง บูลีน ฟิลด์ที่ซีเรียลไลเซอร์จะบันทึกฟิลด์ที่ซีเรียลไลเซอร์ให้บันทึก ส่วนฟิลด์ที่ซีเรียลไม่ได้จะบันทึกไม่ได้ ฟิลด์ที่แก้ไขได้ควรเป็นฟิลด์ที่อนุกรมข้อมูลได้
size_ protected ขนาด
variableTypes string[] | null ตัวแปรทุกประเภทที่จะแสดงในเมนูแบบเลื่อนลงของช่องนี้

เมธอด

วิธีการ คีย์ตัวปรับแต่ง คำอธิบาย
configure_(config) protected กําหนดค่าฟิลด์ตามแผนที่ตัวเลือกที่ระบุ
doClassValidation_(newValue) protected ตรวจสอบว่ารหัสเป็นตัวแปรที่ถูกต้องของประเภทที่อนุญาต
doValueUpdate_(newId) protected

อัปเดตค่าของช่องตัวแปรนี้ รวมถึงตัวแปรและข้อความ

รหัสตัวแปรควรถูกต้อง ณ จุดนี้ แต่หากโปรแกรมตรวจสอบช่องตัวแปรแสดงรหัสที่ไม่ถูกต้อง การดำเนินการนี้อาจใช้งานไม่ได้

dropdownCreate(this) static แสดงรายการชื่อตัวแปรที่จัดเรียงแล้วสําหรับเมนูแบบเลื่อนลงของตัวแปร ใส่ตัวเลือกพิเศษที่ส่วนท้ายเพื่อสร้างชื่อตัวแปรใหม่
fromXml(fieldElement) เริ่มต้นฟิลด์นี้ตาม XML ที่ระบุ
getText() รับข้อความจากช่องนี้ ซึ่งเป็นชื่อของตัวแปรที่เลือก
getValidator() รับฟังก์ชันการตรวจสอบสำหรับช่องนี้ หรือเป็นค่า Null หากไม่ได้ตั้งค่า ส่งคืนค่า Null หากไม่ได้กำหนดตัวแปร เนื่องจากเครื่องมือตรวจสอบไม่ควรทำงานในการเรียก setValue เริ่มต้น เนื่องจากฟิลด์จะไม่แนบกับการบล็อกและพื้นที่ทำงานในขณะนั้น
getValue() รับรหัสของตัวแปร
initModel() เริ่มต้นโมเดลสำหรับฟิลด์นี้หากยังไม่ได้เริ่ม หากค่าไม่ได้ตั้งค่าเป็นตัวแปรในการแสดงผลครั้งแรก เราจะสร้างตัวแปรขึ้นมาแทนที่จะปล่อยให้ค่าไม่ถูกต้อง
onItemSelected_(menu, menuItem) protected จัดการการเลือกรายการในเมนูแบบเลื่อนลงของตัวแปร กรณีพิเศษสำหรับตัวเลือก "เปลี่ยนชื่อตัวแปร..." และ "ลบตัวแปร..." ในกรณีเปลี่ยนชื่อ ให้แจ้งให้ผู้ใช้ป้อนชื่อใหม่
setSourceBlock(block) แนบช่องนี้กับบล็อก
shouldAddBorderRect_()
toXml(fieldElement) ทำให้เป็นอนุกรมของช่องนี้เป็น XML