首页 > 解决方案 > 无法在 Meteor 中读取和解析 XML 文件

问题描述

我使用xml2jwsMeteor。我已经尝试过使用fs 和喜欢文档中的示例

我的 js 文件和 fs

var xml2js = require('xml2js');
var fs = require('fs');
var parser = new xml2js.Parser(); 
export const extractEntities = function (file) {
fs.readFile('./xmlFile.xml', function(err, data) {
    parser.parseString(data, function (err, result) {
        console.dir(result);
        console.log('Done');
    });
});

错误

Uncaught TypeError: fs.readFile is not a function
    at extractEntities (packages.js:8)
    at PackageUpload.componentDidMount (PackageUpload.js:36)
    at commitLifeCycles (modules.js?hash=603e8fa158a1fc409b1d0d581586111b31091ac9:24142)

js文件没有fs

const parseString = require('xml2js').parseString;

export const extractEntities = () => {

    parseString('./xmlFile.xml', function (err, result) {
        console.dir(result);
        return result;
    })
}

在这种情况下,它返回 undefined

但是,当我在其中传递一个 xml 字符串时,parseString它可以工作。但在我的应用程序中,我将它作为文件从磁盘上传并传递到extractEntities. 在这个例子中它没有参数,因为我首先测试解析文件,然后将测试上传的 xml 文件。

这是我的目录

Directory 
   file.js
   xmlFile.xml

标签: javascriptxmlfilemeteor

解决方案


推荐阅读