尽管控制台日志记录成功,JavaScript 代码仍未在 HTML 标记中显示文件内容

问题描述 投票:0回答:0

我正在尝试从文件中读取数据并将其内容存储在“输出”和“错误”类变量中。然后我打算在另一个类中使用这些变量来进行一些 DOM 操作。尽管我使用 console.log() 成功地打印了文件内容,但 HTML 标记没有显示任何数据。你能帮我解决这个问题吗? 这是我的代码:

async getFileContent(filePath) {
    try {
        const response = await fetch(filePath);
        const data = await response.text();
        return data;
    } catch (error) {
        console.log(error);
        return error;
    }
}
 async parseCommand() {
    let cmd = this.InputedCommand.split(" ")[0].toLowerCase();
    switch(cmd){
     case "about:
        let aboutme = this.getFileContent('../../data/aboutme.txt');
        this.output = await aboutme;
        console.log(this.output);              
        break;  
    }
}

DOM 操作:

commandInput.addEventListener("keydown", (event) => {
    if(commandInput.value.trim() != ""){         
        let controller = new Controller(commandInput.value.trim());
        let output = document.createElement("div");
        if(controller.error != ""){
            output.classList.add("error");
            output.textContent = controller.error;           
            Command.appendChild(output);
        }else{
            output.classList.add("output");
            output.innerHTML = controller.output;
            Command.appendChild(output);
        }
    }
}
javascript dom async-await dom-manipulation file-read
© www.soinside.com 2019 - 2024. All rights reserved.