客户端回调Meteor方法调用返回undefined

时间:2015-09-04 15:20:55

标签: javascript meteor

所以我从客户端调用一个有回调的方法:

Meteor.call("readHeaders", Meteor.user().emails[0].address+'/'+Session.get("file1"), 
            function(err,result){
                console.log(result);
        });

以下是被调用的方法:

readHeaders: function(fileName){
        var nodeFS = Meteor.npmRequire('node-fs');
        nodeFS.readFile("somepath/"+fileName,'utf8', function read(err, data){
            if (err) {
                throw err;
            }
            var headers = [data.slice(0,data.indexOf('\n')).split(",")];

            return headers;

        });
    }

正确的结果将打印在服务器上,但在客户端上它返回undefined。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我猜你的方法调用和回调都很好,但你的方法本身可能不会返回你期望的。在console.log(headers)行之前添加return headers,并确保它是一个对象。