npm 包 tidee-simplux 使用教程

阅读时长 5 分钟读完

1. 简介

tidee-simplux 是一款基于 Redux 的简洁易用的状态管理库。与 Redux 相比,tidee-simplux 有以下特点:

  • 更加简洁易用:相较于 Redux 的冗长代码,tidee-simplux 的代码更加简单,易于上手。
  • 更加便捷的调试:tidee-simplux 支持自动注册 Redux DevTools,可方便快捷地进行调试。
  • 更加灵活的异步操作:tidee-simplux 支持更加灵活的异步操作和副作用管理。

2. 安装和基础用法

2.1 安装

使用下面的命令可以安装 tidee-simplux:

2.2 基础用法

tidee-simplux 的核心是 Model,每个 Model 包含一些状态 state 和一些操作 mutators。

以下是一个简单的例子:

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

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

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

在上面的代码中,我们首先使用 createModel 创建了一个 Model,该 Model 包含了一个状态 count 和两个操作 increment 和 decrement。我们可以通过 useSelector 来获取状态,通过 dispatch 来调用操作:

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

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

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

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

在上面的代码中,我们使用 useSelector 获取了 count 状态,使用 useDispatch 获取了 dispatch 函数,然后在组件中使用它们。

3. 异步操作和副作用管理

在前面的例子中,我们只演示了基本的同步操作。但在实际项目中,我们常常需要处理异步操作和副作用。tidee-simplux 提供了异步操作支持,例如:

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

在上面的代码中,我们定义了一个异步操作 incrementAsync,需要经过 1s 后才能完成操作,使用一个 effect 实现。effect 中可以对异步操作进行处理,使用 commit 函数来调用操作。

需要注意的是,如果我们使用 effect 来调用异步函数,我们需要把函数传递到模型构造函数中:

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

上面的代码中,我们将一个异步函数传递给了模型的构造函数,然后在 effect 中使用 callAsyncFn 调用它。需要注意的是,我们必须通过该函数的 payload 属性来传递函数本身,因为 tidee-simplux 支持通过 callAsync 调用异步函数并向其传递参数:

4. 总结

tidee-simplux 是一款基于 Redux 的简洁易用的状态管理库,具有更加简洁易用、便捷调试和灵活异步操作等特点。在使用时,需要定义 Model 和相应的操作,使用 useSelectoruseDispatch 来获取状态和调用操作,可以方便地进行状态管理。

在实际项目中,如果需要处理异步操作和副作用,可以使用 tidee-simplux 的 effect,方便地进行操作和管理。

5. 示例代码

一个完整的使用案例可参考 tidee-simplux-react-starter 示例项目。

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

纠错
反馈