npm包ember-later-shim使用教程

阅读时长 4 分钟读完

简介

Ember-later-shim是一个EmberJS插件,它使得使用later.js这个定时任务库在EmberJS中变得更加简单和方便。

开始

首先,使用ember-cli创建一个新应用程序:

安装Ember-later-shim:

ember-later-shim 默认包含了 later.js 的所有功能,因此无需手动安装后者。该插件会自动把 later.js 的所有 API 注册到 Ember 的服务容器中。

接下来,您将需要添加一个计划任务以在页面上上展示数字:

在 component.js 里添加以下代码:

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

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

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

上述代码中,countUp 函数会在组件初始化之后启动一个无限的循环。每秒钟,计数器都会递增。

现在,在你的应用组件移动到路由组件,使计数器在 route.js 中变得真正的可见:

和 template.hbs

最后,您需要在 route.js 中添加'init'钩子,以便可以启动计时器组件中的任务:

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

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

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

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

先安装npm包 later: npm install later --save-dev

然后,您将在 route.js 顶部导入两个额外的依赖: later 和 @ember/runloop。 后者是必须的,因为无论何时,此代码片段都将运行在 Ember 的 runloop (即应用程序的主线程)中,以避免意外的错误。

在 init 函数中,您将使用 later 来启动自定义循环,每秒钟自动执行一次。每次循环,run 将调用您的计数器,以便组件在页面上显示正确的当前数。

到此为止,我们的计时器就实现好了。

结论

以上是一个简单的使用 Ember-later-shim 的教程。我们已经学习了如何使用计划任务库将一个页面的数字定时递增。最重要的是,您了解了如何将后台JavaScript API与 EmberJS应用程序无缝集成的有用技巧,以及如何在应用程序的主线程中运行它们,以避免错误。

我希望这篇文章对您有所帮助,让您学到了有关Ember-later-shim的详细信息。现在,您可以在自己的应用程序中使用此插件,开始更轻松地使用计时器和任务。

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

纠错
反馈