กลยุทธ์การลากบล็อกที่กำหนดเอง

กลยุทธ์การลากบล็อกเป็นออบเจ็กต์ที่กำหนดวิธีจัดการการบล็อก การลาก โดยใช้ตรรกะในการทําให้บล็อกลากได้ การสร้างกลยุทธ์การลากบล็อกใหม่ช่วยให้คุณเปลี่ยนวิธีที่บล็อกควรจัดการการลากได้โดยไม่ต้องสร้างรายการที่เลือกได้หรือจัดการการเลือกที่กำหนดเอง

เช่น คุณอาจต้องการให้บล็อกทำซ้ำเมื่อลาก แทนการลากตามปกติ กลยุทธ์แบบบล็อกการลากจะช่วยให้คุณทำเช่นนั้นได้

กลยุทธ์การลากมีวิธีการเหมือนกับ IDraggable นอกเหนือจากเมธอด getRelativeToSurfaceXY

การใช้งาน

หากต้องการสร้างกลยุทธ์การลาก คุณต้องติดตั้งใช้งานอินเทอร์เฟซ IDragStrategy การดำเนินการนี้ต้องใช้วิธีการเดียวกันทั้งหมด เป็นอินเทอร์เฟซ IDraggable ยกเว้นเมธอด getRelativeToSurfaceXY ที่การบล็อกใช้ไปแล้ว

คุณสามารถทำตาม วิธีการติดตั้งเครื่องมือที่ลากได้เพื่อ ใช้กลยุทธ์การลาก แต่ข้ามการใช้ getRelativeToSurfaceXY()

การใช้งาน

หากต้องการใช้กลยุทธ์การลากที่กำหนดเอง คุณต้องใช้กลยุทธ์การลากกับ อินสแตนซ์ของบล็อก ซึ่งคุณสามารถทำได้ในเมธอด init ของการบล็อกโดย กำลังโทรหา setDragStrategy

Blockly.Blocks['my_block'] = {
  init: function() {
    // Other initialization...
    this.setDragStrategy(new MyDragStrategy());
    // Other initialization...
  }
}