使用 Opal 的事件完成回调-jQuery

Event Complete Callbacks with Opal-jQuery

我正在开发一个使用 opal-jquery 包装器连续处理多个 jQuery 事件的项目。 jQuery 具有非常有效的回调功能,我想知道是否可以使用 Opal 在纯 ruby 中执行此操作。

您可以使用 Promise 这是一种管理长期异步事件并避免回调地狱的技术。例如,在普通蛋白石中,您会这样做:

HTTP.get("url") do |response|
  puts "got response"
end

有了承诺,这就变成了:

HTTP.get("url").then do |response|
  puts "got response"
end

区别在于then其中returns的Promise(参见http://opalrb.org/docs/promises/)。当 HTTP 获取 returns 内容(或错误)时将执行代码块。

另请查看这篇关于如何使用蛋白石承诺的文章-jquery

http://opalrb.org/blog/2014/05/07/promises-in-opal/