ปลั๊กอินคือโค้ดที่ทำงานได้ด้วยตัวเองซึ่งเพิ่มฟังก์ชันการทำงานให้กับ Blockly เช่น อาจเพิ่มช่องที่กำหนดเอง กำหนดธีมใหม่ หรือมีตัวแสดงผลที่กำหนดเอง โดยทั่วไปแล้ว ปลั๊กอินจะบรรจุและเผยแพร่ผ่าน npm
หากต้องการดูข้อมูลเบื้องต้นเกี่ยวกับปลั๊กอินอย่างรวดเร็ว โปรดดูการบรรยายภาพรวมของปลั๊กอิน (2021)
หากต้องการสร้างปลั๊กอินของคุณเอง โปรดดูเพิ่ม ปลั๊กอิน
ปลั๊กอินของบุคคลที่หนึ่งและบุคคลที่สาม
ปลั๊กอินของบุคคลที่หนึ่งได้รับการสนับสนุนจากทีม Blockly และเผยแพร่ภายใต้ขอบเขต @blockly ใน npm โดยออกแบบมาให้ใช้งานได้ในแอปพลิเคชัน Blockly ที่หลากหลาย
ปลั๊กอินของบุคคลที่สามได้รับการดูแลและเผยแพร่โดยอิสระ ซึ่งอาจซับซ้อนกว่า เป็นแบบทดลองมากกว่า หรือกำหนดเป้าหมายไปยังแอปพลิเคชัน Blockly ที่แคบลง
ค้นหาปลั๊กอิน
ไปที่ ปลั๊กอินและ เดโมของ Blockly ซึ่งมี เดโมแบบสดของปลั๊กอินของบุคคลที่หนึ่ง
ค้นหา
keyword:blockly-pluginใน npm ปลั๊กอินที่มีขอบเขต@blocklyได้รับการเผยแพร่โดยทีม Blockly หากต้องการผลลัพธ์ที่กว้างขึ้น ให้ค้นหาkeyword:blocklyหรือblocklyดู
blockly-samples/pluginsไดเรกทอรี ใน GitHub ซึ่งเป็นที่เก็บสำหรับปลั๊กอินของบุคคลที่หนึ่ง ปลั๊กอินแต่ละรายการมีไฟล์ README ที่อธิบายลักษณะการทำงานและการใช้งานที่ต้องการ
ติดตั้งปลั๊กอิน
เราขอแนะนำให้ติดตั้งปลั๊กอินด้วยเครื่องมือจัดการแพ็กเกจ เช่น npm หรือ yarn ซึ่งจะช่วยให้คุณรับการอัปเดตได้ง่าย
ติดตั้งปลั๊กอินด้วยเครื่องมือจัดการแพ็กเกจ
npm
npm install @blockly/field-angleไหมพรม
yarn add @blockly/field-angleติดตั้งปลั๊กอินโดยไม่ใช้เครื่องมือจัดการแพ็กเกจ
unpkg
<script src="https://unpkg.com/@blockly/field-angle"></script>นอกจากนี้ คุณยังโคลนที่เก็บ GitHub ที่มีปลั๊กอินได้ด้วย สำหรับ ปลั๊กอินของบุคคลที่หนึ่ง ที่เก็บดังกล่าวคือ
blockly-samples
ตรวจสอบไฟล์ README ของปลั๊กอินเพื่อดูว่ามีวิธีการติดตั้งเพิ่มเติมหรือไม่
ใช้ปลั๊กอิน
ปลั๊กอินแต่ละรายการจะแตกต่างกัน ดังนั้นโปรดดูไฟล์ README ของปลั๊กอินเพื่อดูข้อมูลเกี่ยวกับวิธีใช้ปลั๊กอินนั้น ตัวอย่างต่อไปนี้แสดงวิธีใช้ปลั๊กอิน
@blockly/field-angle
นำเข้าโค้ดจากปลั๊กอิน วิธีดำเนินการจะขึ้นอยู่กับวิธีที่คุณติดตั้งปลั๊กอิน
npm หรือ yarn
import Blockly from 'blockly'; import {registerFieldAngle} from '@blockly/field-angle';unpkg
คุณไม่จำเป็นต้องใช้คำสั่ง
importที่เก็บที่โคลน
import {registerFieldAngle} from 'path/to/plugin';เริ่มต้นปลั๊กอินตามต้องการ ปลั๊กอินที่ให้ช่องที่กำหนดเองมักกำหนดให้คุณต้องลงทะเบียนช่อง
registerFieldAngle();ใช้ปลั๊กอิน
Blockly.common.defineBlocksWithJsonArray([ { type: "my_angle_block", message0: "%1 degrees", args0: [ { // Use @blockly/field-angle. type: "field_angle", name: "FIELDNAME", value: 45, }, ], output: null, style: 'math_blocks' }, ]);
เวอร์ชันปลั๊กอิน
ปลั๊กอินใน blockly-samples ใช้ การกำหนดเวอร์ชันแบบ Semantic,
ซึ่งกำหนดให้ต้องมีการเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบเพื่อใช้เวอร์ชันหลักใหม่ ปลั๊กอินใหม่ใดก็ตามที่
monkey patch core จะมีเวอร์ชันหลักเป็น 0 เพื่อแสดงถึงการพัฒนาเริ่มต้น
ปลั๊กอินส่วนใหญ่มีแพ็กเกจ blockly เป็น
peerDependency
แทนที่จะเป็น dependency เนื่องจากเราถือว่าคุณได้ติดตั้ง Blockly ไว้แล้ว (การใช้ปลั๊กอินโดยไม่ใช้ Blockly นั้นไม่สมเหตุสมผล) วิธีนี้ช่วยให้คุณจัดการเวอร์ชัน Blockly ได้ด้วยตนเอง แต่ยังกำหนดให้คุณต้องตรวจสอบ package.json ของปลั๊กอินเพื่อกำหนดเวอร์ชันขั้นต่ำของ Blockly ที่จำเป็น หากมีการอัปเดตปลั๊กอินให้ต้องใช้ Blockly เวอร์ชันใหม่กว่า ระบบจะถือว่าเป็นการเปลี่ยนแปลงที่ส่งผลกับส่วนอื่นในระบบและจะเพิ่มเวอร์ชันหลัก
เมื่อคุณเพิ่มปลั๊กอินลงใน package.json ของแอปพลิเคชัน ค่าเริ่มต้นคือการใส่เครื่องหมายแคเร็ตก่อนเวอร์ชัน
"dependencies": {
"@blockly/field-angle": "^5.0.12"
}
ซึ่งจะช่วยให้ npm ติดตั้งเวอร์ชันย่อยใดก็ได้ที่เท่ากับหรือสูงกว่าเวอร์ชันที่ระบุไว้ ดังนั้นเวอร์ชัน 5.0.20 หรือ 5.1.0 จึงใช้งานได้ แต่เวอร์ชันหลักใหม่ เช่น 6.0.1 จะใช้งานไม่ได้ เมื่ออัปเดตเป็น Blockly เวอร์ชันใหม่ คุณควรตรวจสอบว่าปลั๊กอินใดบ้างที่อัปเดตเป็นเวอร์ชันหลักใหม่ได้ด้วย