blockly > utils > xml

เนมสเปซ utils.xml

ฟังก์ชัน

การทำงาน คำอธิบาย
createElement(tagName) สร้างองค์ประกอบ DOM สำหรับ XML
createTextNode(text) สร้างองค์ประกอบของข้อความสำหรับ XML
domToText(dom)

แปลงโครงสร้าง DOM เป็นข้อความธรรมดา ตอนนี้รูปแบบข้อความค่อนข้างน่าเกลียด คือบรรทัดเดียวทั้งหมดไม่มีช่องว่าง

อักขระควบคุมจะใช้การเข้ารหัสทศนิยมเป็นอักขระหลีก ซึ่งรวมถึง U+0000 ถึงแม้ว่าในทางเทคนิคแล้วไม่ใช่อักขระ XML ที่ถูกต้องก็ตาม (แม้แต่ใน XML 1.1) https://www.w3.org/TR/xml11/#charsets

เมื่อ U+0000 ที่ถอดรหัสแล้วจะได้รับการแยกวิเคราะห์เป็น U+FFFD ("อักขระแทนที่")

injectDependencies(dependencies)

แทรกการใช้งานเอกสาร, DOMParser และ/หรือ XMLSerializer เพื่อใช้แทนรูปแบบที่เป็นค่าเริ่มต้น

ใช้โดย Node.js Wrapper สำหรับ Blockly (ดูสคริปต์/แพ็กเกจ/โหนด/core.js) เพื่อระบุการใช้งานจากแพ็กเกจ jsdom แทน

แม้ว่าอาจตั้งค่าแยกกันได้ แต่ปกติแล้วทั้ง 3 ประเภทจะมาจากอินสแตนซ์ JSDOM เดียวกัน อย่างน้อยที่สุดต้องมาจากสำเนาแพ็กเกจ jsdom ชุดเดียวกัน (โดยทั่วไปแล้วจะหลีกเลี่ยงข้อกำหนดนี้ได้ยาก แต่อาจมีการละเมิดโดยไม่ตั้งใจด้วยการใช้ Webpack เพื่อสร้างแพ็กเกจหลายแพ็กเกจที่มี Blockly และ jsdom แล้วโหลดมากกว่า 1 รายการลงในรันไทม์ JavaScript เดียวกัน ดูตัวอย่างของกรณีนี้ได้ที่ https://github.com/google/blockly-samples/pull/1452#issuecomment-1364442135)

textToDom(ข้อความ)

แปลงสตริง XML เป็นโครงสร้าง DOM

อักขระควบคุมควรกำหนดเป็นอักขระหลีก (แต่เราจะพยายามอย่างดีที่สุดในการแยกวิเคราะห์อักขระที่ไม่ใช้ Escape)

โปรดทราบว่าแม้จะกำหนดเป็นอักขระหลีก แต่ U+0000 จะได้รับการแยกวิเคราะห์เป็น U+FFFD ("อักขระที่ใช้แทนที่") เนื่องจาก U+0000 ไม่ใช่อักขระ XML ที่ถูกต้อง (แม้แต่ใน XML 1.1) https://www.w3.org/TR/xml11/#charsets

ตัวแปร

ตัวแปร คำอธิบาย
NAME_SPACE เนมสเปซสำหรับ XML ของ Blockly