npm 包 underscore.deferred 使用教程

阅读时长 4 分钟读完

介绍

underscore.deferred 是一个基于 Underscore.js 的 JavaScript 库,它提供了一种方便的异步编程方式。它通过将回调函数的嵌套层级降至最低,使得代码更易读、易维护。

安装

可以使用 npm 安装 underscore.deferred:

使用

创建 Deferred 对象

使用 _.Deferred() 方法可以创建一个 Deferred 对象:

这个 Deferred 对象是一个可链式调用的对象,支持 promise API。

定义回调函数

Deferred 对象提供了以下三个方法来定义回调函数:

  • deferred.done(callback):当 Deferred 对象成功时执行的回调函数;
  • deferred.fail(callback):当 Deferred 对象失败时执行的回调函数;
  • deferred.always(callback):无论 Deferred 对象成功还是失败都会执行的回调函数。

执行回调函数

执行回调函数的方法有两种:

  • deferred.resolve([args]):执行成功的回调函数;
  • deferred.reject([args]):执行失败的回调函数。

链式调用

Deferred 对象可以链式调用,通过返回一个新的 Deferred 对象来实现:

-- -------------------- ---- -------
--- --------- - -------------
--- --------- - -------------

------------------------- -
  ------------------ -------- -----------
  --------------------
---

------------------------- -
  ------------------- -------- -----------
---

--------------------
-- -------- -------- --------
-- --------- -------- --------

延迟执行

使用 _.delay() 方法可以延迟执行回调函数:

-- -------------------- ---- -------
--- -------- - -------------

------------------ -
  ----------------------------
-- ------

------------------------------ -
  --------------------- -------- ---- ------- -- --------
---

处理多个 Deferred 对象

使用 _.when() 方法可以处理多个 Deferred 对象:

-- -------------------- ---- -------
--- --------- - -------------
--- --------- - -------------

----------------- --------------------------------- -------- -
  ---------------- --------- -------- ---- -------- -- -------- ---------
---

-------------------------
-------------------------
-- ------ --------- -------- ---- -------- --- ---

总结

underscore.deferred 是一个非常实用的 JavaScript 库,它提供了一种方便的异步编程方式。通过学习 underscore.deferred 的使用方法,我们可以写出更易读、易维护的 JavaScript 代码。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/47277

纠错
反馈