给出有关如何为数据创建XML格式(Convert JavaScript object (array) to XML)的解决方案
我现在需要一种使它自动下载到.xml文件中的方法,这是我的代码:
toXml = (data) => {
return data.reduce((result, el) => {
if (el.title && el.author)
return result + `<BookData><title>${el.title}</title><author>${el.author}</author></BookData>\n`
if (el.title && !el.author)
return result + `<BookData><title>${el.title}</title></BookData>\n`
if (!el.title && el.author)
return result + `<BookData><author>${el.author}</author></BookData>\n`
}, '')
}
if (type == 2)
{
let data = this.toXml(arrayData);
console.log(data);
}
我在哪里传递数据以创建XML?
我应该代替console.log(data);
编写什么代码,以便获得下载的.xml文件?
编辑:在回答 How to create and download an XML file on the fly using javascript?
答案 0 :(得分:0)
迟到总比不到好。此代码使用javascript下载XML文件:
var pseudoelement = document.createElement("a");
var filename = "example.xml";
var pseudoelement = document.createElement("a");
var blob = new Blob([toXml ], { type: "text/plain" });
pseudoelement.setAttribute("href", window.URL.createObjectURL(blob));
pseudoelement.setAttribute("download", filename);
pseudoelement.dataset.downloadurl = ["text/plain", pseudoelement.download, pseudoelement.href].join(":");
pseudoelement.draggable = true;
pseudoelement.classList.add("dragout");
pseudoelement.click();
thank_for_this