我可以从Meteor助手返回异步值(Promise)吗?

时间:2015-07-30 13:59:51

标签: meteor meteor-blaze

Promise是一种对象类型,用作未来结果的占位符, 例如HTTP请求的主体,或Meteor方法调用的返回值。 基本上任何强制你传递回调来接收它的函数 返回值(而不仅仅是返回它)被称为异步函数, 它给出的价值可以用Promise来表示。

Meteor中的问题是helper方法仅用于处理 同步值 - 例如网页中的文本或a的内容 Minimongo系列。当你从一个帮助者返回一个Promise时,帮助者

  • 显示[object Promise]而不是已解决的值
  • 在promise解决后不会更新

存在一些解决此问题的尝试:simple:reactive-methodarsnebula:reactive-promise,但它们要求您将助手更改为某种样式,或仅使用Meteor.call而不是仅仅允许返回通用承诺。

是否存在我忽略的某些内容,或者是否有解决方案?我已经尝试了一段时间了,如果没有正式的答案,我可能会自己做点什么。

1 个答案:

答案 0 :(得分:0)

即使对于其他库,我认为现在的答案是使用包deanius:promise(免责声明:我使用其他软件包的作者的输入创作了它。)

它可以解决问题,并添加一些很好的功能,如可控错误和加载消息。