Blockly.Xml.textToDom ожидал документ <xml> - PullRequest
0 голосов
/ 06 ноября 2019

Я пытался восстановить все свои использованные блоки из localStorage. Я перебираю все локальные сохраненные блоки, но я получил следующую ошибку. Было бы здорово, если бы я мог получить некоторую помощь.

Ошибка:

blockly_compressed.js:1274 Uncaught Error: Blockly.Xml.textToDom expected an 
<xml> document.
at Object.Blockly.Xml.textToDom (blockly_compressed.js:1274)
at restoreWorkspace ((index):312)
at HTMLButtonElement.onclick ((index):115)
Blockly.Xml.textToDom   @   blockly_compressed.js:1274
restoreWorkspace    @   (index):312
onclick @   (index):115

Код для восстановления всех блоков:

 // restore blocks
    function restoreWorkspace() {
        for (var i = 0; i < localStorage.length; i++){
            let program=(localStorage.getItem(localStorage.key(i)));
            Blockly.mainWorkspace.clear();
            let textToDom = Blockly.Xml.textToDom(program);
            Blockly.Xml.domToWorkspace(Blockly.mainWorkspace, textToDom);
        }
    }

Код для сохранения композиций:

   function saveWorkspace() {
        let xml = Blockly.Xml.workspaceToDom(Blockly.mainWorkspace);
        let domToPretty = Blockly.Xml.domToPrettyText(xml);
        var ranInt = Math.floor(Math.random() * 10);
        window.localStorage.setItem("myProgram"+ranInt, domToPretty);
    }
...