如何查看Meteor方法中的抛出错误?

Lor*_*ren 3 meteor

我想看看Meteor.Error的实例以及抛出的任何其他内容.在服务器端,我正在查看运行meteor命令后打印到控制台的内容(在localhost:3000上进行开发).在客户端上,我正在查看JS控制台.

当在客户端上抛出Meteor.Error时,我在客户端控制台上看到它.当在服务器上抛出Meteor.Error时,我看不到任何一方.当在任何一方抛出其他类型的错误时(例如,assert(false)使用mrt assert包),我在任何一方都看不到它.

Aks*_*hat 5

它取决于您抛出的位置Meteor.Error,它需要一个上下文来提供给客户端.

如果你抛出一个Meteor.Error方法,你会看到它回到err客户端调用的回调中.例如

服务器端

Meteor.methods({
    'crashme':function() {
        throw new Meteor.Error(500, "Error Title", "details", "more details");
    }
});
Run Code Online (Sandbox Code Playgroud)

客户端

Meteor.call("crashme", function(err, result) {
    console.log(err);
    //--> Prints the thrown error
});
Run Code Online (Sandbox Code Playgroud)