gpt4 book ai didi

javascript - promise 和 Meteor.call()

转载 作者:行者123 更新时间:2023-11-30 08:23:47 25 4
gpt4 key购买 nike

我有一个 Meteor.method(),服务器端从 oracledb 返回一个 promise 。客户端我有:

Meteor.call('myMethod', (error, result) => {
result.then() // err -> no .then() method?,
});

那么结果是什么?它没有 .then() 方法,所以它不是一个 promise?

最佳答案

Meteor 不会将 promise “发送”给客户端。

一旦 promise 在服务器上得到解决(或拒绝),服务器就会向客户端返回一个结果值(这会触发回调),而不是在 promise 从方法本身返回的那一刻(除非它已经解决)返回时)。

您还可以使用 async/await 来简化代码。

这里是 a blog post有关在方法中使用异步代码的更多详细信息。

注意:

从服务器发送的值使用 EJSON 序列化。对象方法、getter 等都从中剥离,除非您创建 custom serializer。 .在某些情况下,序列化甚至可能会失败(我认为它发生在某些 moment 对象上)并导致返回 undefined

关于javascript - promise 和 Meteor.call(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49076909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com