npm 包 gsen 使用教程

阅读时长 6 分钟读完

介绍

gsen 是一个基于 Vue.js 的全局状态管理库,可以用于管理整个应用程序的状态。它支持模块化组织和异步数据加载,同时提供了强大的调试工具。适用于中大型单页应用。

安装

你可以通过 npm 安装 gsen:

快速开始

使用 gsen,需要在 Vue 组件中挂载 GStore,并使用 mapState、mapMutations 等辅助函数获取状态或暴露状态修改方法。

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

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

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

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

实现

gsen 的实现基于一个全局的 Store 对象,该对象包含了应用程序中的所有状态和状态修改方案。GSen.Store 实例的构造函数接受一个可配置的对象,它可以包含以下属性:

  • state: 包含应用程序状态的初始值的对象;
  • actions: 类似于 mutations,但是支持异步操作,可以接受一个 context 对象,包含当前的 state 和 commit 方法;
  • mutations: 包含修改应用程序状态的一些纯函数;
  • getters: 提供了一种从 store 中获取状态的方式,可以接受 state、getters、rootState 和 rootGetters 参数。
-- -------------------- ---- -------
----- ----- -
  ----------- -------- - --- -
    ----- - ----- - --- --------- - --- ------- - --- ------- - -- - - -------

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

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

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

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

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

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

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

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

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

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

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

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

mapState 和 mapMutations

mapState 和 mapMutations 是 gsen 提供的几个辅助函数,用于方便地在 Vue 组件中获取状态或暴露状态修改方法。

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

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

使用辅助函数可以简化模板语法。例如,使用 mapState 和 mapMutations,模板语法可以写成这样:

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

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

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

总结

gsen 是一个简单而强大的全局状态管理库,它可以用于管理整个应用程序的状态。通过 mapState、mapMutations 等辅助函数,我们可以轻松地获取状态或修改状态。同时,gsen 支持异步数据加载,提供了强大的调试工具,适用于中大型单页应用的状态管理。

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

纠错
反馈