我正在尝试将一些XML转换为json
我这里有一个函数
var parseString = require('xml2js').parseString
_.map(dataset, function(items) {
return _.map(items, function(item) {
cancel = parseString(item.XX_CANCEL, function(item) {return item;});
dropdown = parseString(item.XX_VIEW, function(item) {return item;});
fillOpen = parseString(item['XX_FILL OPEN'], function(item) {return item;});
return item;
});
});
当我尝试执行它时,我收到此错误
/home/mretana/Documents/Projects/capilleiraclickandgamblebackend/node_modules/mssql/node_modules/tedious/node_modules/babel-runtime/regenerator/runtime.js:493
throw exception;
^
TypeError: Cannot read property 'toString' of null
at Parser.exports.Parser.Parser.parseString ...
只是为了让您知道,例如,如果我删除parseString(...)
并执行
cancel = item.XX_CANCEL;
console.log(cancel)
logs ---> <element><element_type>BASIC_CHECKBOX</element_type><element_call/><element_content>1</element_content></element>
它记录了XML元素,这就是我使用parseString
,
cancel = parseString(item.XX_CANCEL, function(item) {return item;});
那么,您认为发生了什么?
我只需要将这些XML元素转换为JSON。
答案 0 :(得分:1)
查看xml2js的API,很明显parseString
使用标准格式的function(err, res)
接受回调,而您使用的格式为function(item)
。