npm 包 apollo-mutation-state 使用教程

简介

apollo-mutation-state 是一个针对 Apollo 客户端的 npm 包,它可以帮助您更好地管理客户端 applications 中的数据。它为您提供了一个简单而强大的机制来跟踪您的 Apollo mutations 的状态,以便更好地选择如何根据这些信息更新您的用户界面。

它让您编写更少的代码、更快的应用程序,并更好地控制应用程序状态。您可以使用该包库,更轻松地管理数据的状态,并以引人注目、响应式的方式向用户显示数据。

本文将详细介绍 apollo-mutation-state 的使用方法,对于刚刚接触该包的开发者,可以学习其使用,对于早已接触该包的开发者,可以更好地了解如何使用该包库,进行更轻松的开发。

安装

使用 npm 命令来安装 apollo-mutation-state,具体命令如下:

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

使用

使用 apollo-mutation-state 包,需要首先进行一些配置。对于新手来说,这可能有些困难,但一旦您学会了,您会发现这种方法是一种更佳的方法来管理状态的。

我们可以按照以下步骤来使用 apollo-mutation-state。

步骤 1:创建 mutations

创建数据 mutations,这些 mutations 是指从 apollo 客户端发送到后端服务器的请求。

这里,我们创建一个 login mutation 用于登录系统,具体代码如下:

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

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

步骤 2:初始化 apollo-mutation-state

初始化 apollo-mutation-state 并将 mutations 添加到其中。初始化的代码如下所示:

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

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

接下来,将 mutationState 添加到 app 客户端。

步骤 3:在 app 客户端中使用 apollo-mutation-state

将 mutationState 添加到 app 客户端,以便在需要调用 mutations 时使用该库。

在 Vue 应用程序的脚本中添加以下代码,以使用MutationStateMixin:

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

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

此代码通过从 app 应用程序中调用 mutationState.mutation('login', {...}) 函数来发起 login mutation 请求。在执行 mutation 请求的过程中,您可以跟踪其状态,并在 UI 中使用这些信息进行更新。

步骤 4:使用状态

在 UI 中使用操作状态,以显示您的 mutations 是否执行以及执行的结果。这里我们在应用程序中使用了 loginLoadingloginError 这两个状态变量,以显示登录操作是否在进行中以及登录操作是否出错。

总结

至此,本文详细介绍了 apollo-mutation-state 包的使用方法。通过在您的应用程序中使用该包,您可以更好地管理数据状态,实现更灵活、更强大的应用程序。希望本篇文章对您对于前端开发中的 apollo-mutation-state 使用有所帮助。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005604a81e8991b448de75a


猜你喜欢

  • with-laravel

    A simple package exposing a bunch of HOC's for working with Laravel and React. Why? Cuz everyone hat...

    3 年前
  • npm 包 ceri-login-modal 使用教程

    在前端开发中,有时需要给用户提供一个登录弹窗来实现用户认证等功能。而 ceri-login-modal 就是一个非常方便的 npm 包,提供了一个完整的登录弹窗组件,可以快速集成到前端项目中。

    3 年前
  • npm 包 feathers-elastic-logger 使用教程

    介绍 Feathers Elastic Logger 是一个适用于 Node.js 应用程序的 npm 包,可以将日志数据发送到 ElasticSearch 中。 安装 在项目目录下,使用 npm 命...

    3 年前
  • @monaco-ex/pg

    PostgreSQL client - pure javascript & libpq with the same API node-postgres Non-blocking Pos...

    3 年前
  • npm 包 incubus8-fastest-validator 使用教程

    在前端开发中,数据校验是一个非常重要的部分。incubus8-fastest-validator 是一个快速、轻量级、灵活的 JavaScript 数据校验库,用于在应用程序中执行验证操作。

    3 年前
  • lesx-code-inject

    lesx code inject by babel lesx-code-inject lesx code inject by babel. HomePage https://github.com/le...

    3 年前
  • npm 包 angular2-expandable-list 使用教程

    在前端开发中,实现可扩展的列表(expandable list)是一个常见的需求。Angular2-expandable-list 是一个 Angular2 的 npm 包,它提供了一种简单且灵活的方...

    3 年前
  • npm 包 dagre-d3v4 使用教程

    前言 笔者在前端开发中遇到了一些图形可视化的问题,通过查询资料和尝试,最终找到了解决方案:使用 dagre-d3v4 这个 npm 包。本文将通过对该包的介绍和详细使用教程,来帮助读者更好地了解如何使...

    3 年前
  • verification_data

    A library for data validation. verification.js A library for data validation. Install Usage No ES6 -...

    3 年前
  • npm 包 zeronet 使用教程

    什么是 zeronet zeronet 是一个基于比特币区块链技术的完全分散化的网络,通过使用 BitTorrent 协议实现网站的分布和共享,任何人都可以加入并发布站点,站点所有权和内容完全由站点所...

    3 年前
  • dep-cache

    Cache holder in P2P network dep-cache Cache holder in P2P network Usage - --------- ------- --------...

    3 年前
  • ice-video

    React component, a danmuku video player package. ice-video The web danmuku video player built from t...

    3 年前
  • npm 包 rain-rn-android-kit 使用教程

    在前端开发中,我们经常会用到一些第三方工具或者库来简化我们的开发流程。其中,npm 是最常用的包管理工具之一。因此,在本篇文章中,我们将会介绍一款名为 rain-rn-android-kit 的 np...

    3 年前
  • @restorando/winston-tcp-graylog

    graylog support for winston based on gelf-pro winston-tcp-graylog --- - -- ------------------- -----...

    3 年前
  • 在前端中使用 Angular-oauth2-oidc-cognito

    简介 在前端开发中,安全验证是很重要的一环,特别是在与第三方服务进行交互的时候。Angular-oauth2-oidc-cognito是npm包中的一种,它能够帮助前端应用获取访问API所需的Acce...

    3 年前
  • openregister-location-picker

    An autocomplete widget that uses data from the openregister. Location picker - what it is and how to...

    3 年前
  • npm 包 k-bulma 使用教程

    在前端开发中,一个好用的 UI 框架可以提高开发效率,减少不必要的代码精力,其中 Bulma 是一个值得推荐的 CSS 框架。而 k-bulma 是基于 Bulma 的一个 npm 包,提供了更多的特...

    3 年前
  • npm 包 react-glyphs 使用教程

    在前端开发中,我们常常需要使用图标来进行页面设计,而 react-glyphs 是一个非常实用的 npm 包,它可以帮助我们在 React 应用中非常方便地使用字体图标。

    3 年前
  • bootstrap-beta

    The most popular front-end framework for developing responsive, mobile first projects on the web. ...

    3 年前
  • npm 包 choo-umd 使用教程

    npm 包 choo-umd 使用教程 前言 在前端领域,使用 npm 包已经是司空见惯的事情了。其中一个流行的模块化框架是 choo.js,它是基于 Flux 架构设计的一个小巧且易用的框架。

    3 年前

相关推荐

    暂无文章