我很難理解流星中Promise包的文檔,Meteor支持在客戶端開箱即用的承諾嗎?我還沒有找到一個例子。流星與承諾?
Q
流星與承諾?
1
A
回答
2
在目前的Meteor(1.3)中,你不需要Promise包。 改爲包含ecmascript包,這將爲您提供ES6標準承諾以及「等待」支持,這比承諾更容易理解,並使代碼更具可讀性。
參見例如https://forums.meteor.com/t/start-using-async-await-instead-of-promises-and-callbacks/17037和https://www.twilio.com/blog/2015/10/asyncawait-the-hero-javascript-deserved.html
0
排序的。流星方法有內置的異步回調:
Meteor.call('myMethod', foo1, function (err, res) {
//this code waits for err or res
})
0
我用FutureJS:
Future = Npm.require('fibers/future');
var myFuture = new Future();
SomeAsynchronousFunction("foo", function(err, res) {
if (err) {
myFuture.throw(err);
} else {
myFuture.return(res);
}
});
return myFuture.wait();
所以,如果你正在做一個GET
要求,更換SomeAsynchronousFunction()...
有:
Meteor.http.call('GET', 'someUrl', function(err, resp) {
if (err) {
myFuture.return(err);
} else {
myFuture.return(resp);
}
});
相關問題
- 1. 流星:替換deanius:承諾與okgrow:承諾
- 2. 承諾鏈接+返回變量與流星迴調
- 3. Javascript承諾:catch流
- 4. 與承諾
- 5. 角:與承諾
- 6. AngularJS與承諾
- 7. 與承諾
- 8. 承諾與angularjs
- 9. 承諾呼叫與承諾分辨
- 10. 混合firebase承諾與ES6承諾
- 11. Native承諾與藍鳥承諾
- 12. 如何使用角度2流星的承諾
- 13. 如何使用流星允許3個電話承諾
- 14. 承諾服務器錯誤時創建新的流星項目
- 15. AngularJS中的節流承諾
- 16. 來自RxJS承諾的流
- 17. 如何與承諾
- 18. 窗口:與承諾
- 19. 與承諾的jQuery
- 20. 承諾與散裝
- 21. 與修改承諾
- 22. 與承諾工作
- 23. 環路與承諾
- 24. 承諾與CoffeeScript的
- 25. 期貨與承諾
- 26. PG-承諾將與$()
- 27. 承諾內承諾
- 28. 承諾拒絕失敗,承諾承諾
- 29. 承諾中的承諾承諾
- 30. angular 2承諾承諾