目录
1.安装fast-xml-parser插件
npm install fast-xml-parser
2.在项目文件中引入插件
import parser from 'fast-xml-parser';
3.转化项options配置
options: {
attributeNamePrefix: '',
textNodeName: 'value',
ignoreAttributes: false,
parseAttributeValue: true,
trimValues: true,
parseTrueNumberOnly: true,
arrayMode: false
},
配置(OPTIONS)说明
OPTIONS
attributeNamePrefix
: 提供预定的字符串作为属性名称前缀, 比如@_
, 这时假设解析的属性为name
,那么在解析后的JSON
中该属性将会解析为@_name
attrNodeName
: 将所有属性分组为给定名称的属性, 取代原本的属性名称, 修改为该名称ignoreAttributes
: 忽略解析属性, 配置该项的时候不会解析标签内的属性, 默认为true
ignoreNameSpace
: 从标记和属性名称中移除命名空间字符串allowBooleanAttributes
: 标记可以具有不带任何值的属性parseNodeValue
: 将属性的值解析为float、integer或booleanparseAttributeValue
: 将属性的值解析为float、integer或booleantrimValues
: 修剪属性或节点的字符串值decodeHTMLchar
: This options has been removed from 3.3.4. Instead, use -tagValueProcessor
, and attrValueProcessor. See above example.cdataTagName
: 如果指定,解析器会将CDATA解析为嵌套标记,而不是将其值添加到父标记中cdataPositionChar
: 它将有助于将JSON转换回XML,而不会失去CData的位置。localeRange
: 解析器将接受标记或属性名中的非英文字符parseTrueNumberOnly
: 如果为真,则像“+123”或“0123”这样的值不会被解析为数字。tagValueProcessor
: 转换期间处理标记值。如HTML解码、单词大写等,仅适用于字符串。attrValueProcessor
: 转换期间处理属性值。如HTML解码、单词大写等,仅适用于字符串stopNodes
: 不需要解析的标记名数组。相反,它们的值被解析为字符串
转自简书:fast-xml-parser 中文文档 - 简书https://www.jianshu.com/p/d4efd04d43fb
4.在请求接口时调用该方法
const jsonObj = parser.parse(res.data, this.options);