npm 安装xml-js
引入xml-js
import convert from 'xml-js'
const data='xml字符串'
//data.replace必须,不然可能会解析出错 https://www.thinbug.com/q/41902971 具体可看这个问题
convert.xml2json(data.replace(/&(?!(?:apos|quot|[gl]t|amp);|#)/g, '&'), { compact: true, spaces: 4 })
附带一个压缩xml方法
function compressXmlStr(str) {
var prefix, suffix
var i = str.indexOf('\r')
while (i > -1) {
prefix = str.substring(0, i)
suffix = str.substring(i, str.length).trim()
str = prefix + suffix
i = str.indexOf('\r')
}
i = str.indexOf('\n')
while (i > -1) {
prefix = str.substring(0, i)
suffix = str.substring(i, str.length).trim()
str = prefix + suffix
i = str.indexOf('\n')
}
return str
}