【问题标题】:Implement promises pattern实现承诺模式
【发布时间】:2013-02-21 03:45:30
【问题描述】:

我有一个与其他对象一起调用的函数,当我的应用程序被加载时,获取参数并且该函数应该等待调用所有对象,然后使用承诺模式执行所以我可以确保所有对象都已加载,但我没有不知道对象的数量,我不想设置加载超时。我不谈论jquery等具体技术,需要算法。

伪代码:

      function loadWidget(id){
        list.push(id);
       //here I should ensure all Widget is loaded


          }

在我调用的其他应用程序中

    app.loadWidget.add(widget1.id);
    .
    .
    .      
    app.loadWidget.add(widget2.id);

【问题讨论】:

  • 哇!这是一个很长的句子。
  • 你的问题需要校对一下我的朋友,尤其是它的语法。

标签: javascript algorithm design-patterns


【解决方案1】:

如果您不想要现成的解决方案,而是想自己实现所有算法,请阅读 Wikipedia 文章中引用的论文:Futures and promises 以及 Promises/APromises/A+ 的规范。

为了确保您做对了,请阅读 Domenic Denicola 的 You're Missing the Point of Promises 并查看 Compliances tests for Promises/A+

另一方面,如果您认为重新发明轮子不值得(除非是为了教育 - 在这种情况下,一定要尽可能多地重新发明轮子)然后看看RSVP.js ,一个轻量级库,提供用于组织异步代码的工具。例如 Ember.js 使用 RSVP.js。

【讨论】:

    猜你喜欢
    • 2014-11-25
    • 1970-01-01
    • 2015-11-07
    • 2020-09-20
    • 1970-01-01
    • 2014-12-29
    • 1970-01-01
    • 2021-10-12
    • 1970-01-01
    相关资源
    最近更新 更多