为什么从xml-to-json的回调返回值会得到未定义的值?

const xml2json = require("xml-to-json");    


const convertXMITOJSON = () => {

      xml2json(

        {

          input: "./sequence_diagram.xmi",

          output: "./test.json",

        },

        function (err, result) {

          if (err) console.error(err);

          else {

            return result;

          }

        }

      );

    };


let result = convertXMITOJSON();


console.log(result); // undefined

我想在此函数之外使用结果的值。但是当我返回结果的值时,它变得未定义。为什么在此代码中,函数外部的结果值未定义?


RISEBY
浏览 83回答 1
1回答

白猪掌柜的

承诺是处理它的最简单方法const xml2json = require("xml-to-json");const convertXMITOJSON = () => {  return new Promoise((resolve, reject) => {    xml2json({        input: "./sequence_diagram.xmi",        output: "./test.json",      },      function(err, result) {        if (err) {          console.error(err);          reject(err)        } else {          resolve(result);        }      }    );  })};convertXMITOJSON().then(result => {  console.log(result);}可以使用异步和等待更改代码
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript