npm 包 gun-mongo 使用教程

简介

gun-mongo 是一个基于 Gun.js 和 MongoDB 的中间件库,它能够让你将 MongoDB 作为 Gun.js 的底层存储引擎,同时还支持多节点部署和数据同步、版本控制和数据加密等功能。

安装

使用 npm 安装 gun-mongo:

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

引入

在你的代码中引入 gun-mongo:

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

这里的 MongoDB 的参数配置说明如下:

  • host:MongoDB 服务器地址,默认为 localhost
  • port:MongoDB 服务器端口,默认为 27017
  • database:指定使用的数据库,默认为 gun
  • collection:指定使用的集合,默认为 gun

数据结构

在 gun-mongo 中,每个节点都对应了一个数据库集合,这个集合存储了该节点所处理的数据。

Gun.js 使用链式结构来表示数据,它的结构类似于传统的关系型数据库中的多张表相互关联,但又比传统的表结构更灵活。

在 gun-mongo 中,每个数据节点都有一个唯一的标识符,通常是一个随机的字符串,作为该节点的 PK。

下面是一个示例数据:

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

它表示一个包含一些键值对和数组和对象的节点。

数据查询

在 gun-mongo 中,数据查询使用 Gun.js 的查询语法,支持链式语法和回调函数两种方式。

链式语法

链式语法使用 Gun.js 中的 get 方法来获取节点,并使用 val 方法来获取节点数据:

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

回调函数

回调函数接受一个参数,该参数包含了查询结果:

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

数据更新

在 gun-mongo 中,数据更新使用 Gun.js 的 put 方法来更新节点数据:

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

数据删除

在 gun-mongo 中,数据删除使用 Gun.js 的 put(null) 方法:

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

这会将该节点数据从数据库中删除。

结语

通过本文的介绍,你应该已经掌握了 gun-mongo 的使用方法,包括安装、引入、数据结构的表示方法以及数据的查询、更新和删除方法。虽然本文只是 gun-mongo 的一个简单教程,但是 gun-mongo 强大的功能和灵活的使用方式,可以支持各种不同场景下的应用。

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


猜你喜欢

  • npm 包 @npm-polymer/gold-zip-input 使用教程

    在前端开发中,我们经常会需要和文件打交道。而 zip 文件是一个常见的文件格式。在这种情况下,使用 npm 包 @npm-polymer/gold-zip-input 可以方便地实现 zip 文件的上...

    3 年前
  • npm 包 @npm-polymer/iron-autogrow-textarea 使用教程

    简介 在前端开发中,实现文本输入框自动伸缩功能是很常见的需求。npm 包 @npm-polymer/iron-autogrow-textarea 就是专门为前端开发提供的一个自动伸缩文本框组件。

    3 年前
  • npm 包 @npm-polymer/iron-a11y-keys 使用教程

    在前端开发的过程中,我们经常需要实现键盘的快捷键操作。而 @npm-polymer/iron-a11y-keys 包可以帮助我们快速简单的创建这些快捷键操作。 安装 使用 npm 安装 @npm-po...

    3 年前
  • npm 包 @npm-polymer/iron-checked-element-behavior 使用教程

    前言 在前端开发中,有很多场景需要使用到 checkbox 或 radio 等表单元素,为了实现选中或取消选中时的效果,我们需要使用一些 JS 代码处理这些事件。而在 Polymer 中,我们可以使用...

    3 年前
  • NPM包 @npm-polymer/iron-ajax使用教程

    在现代web应用程序开发中,使用Ajax进行数据传输变得越来越普遍。@npm-polymer/iron-ajax是一个优秀的npm包,它提供了一种简单的方式来使用Ajax进行请求。

    3 年前
  • npm 包 @npm-polymer/iron-collapse 使用教程

    在前端开发中,UI 展示往往需要用到一些动态元素,如展开/折叠、切换等。而在实现这些动态元素时,一个方便的工具便是 npm 包 @npm-polymer/iron-collapse。

    3 年前
  • npm 包 @npm-polymer/iron-demo-helpers 使用教程

    在前端开发中,经常会需要展示一些组件的 demo 和示例,而 @npm-polymer/iron-demo-helpers 就是一个方便开发者快速创建 demo 的 npm 包,本文将介绍如何使用该 ...

    3 年前
  • npm 包 @npm-polymer/iron-component-page 使用教程

    在前端开发中,使用组件化技术可以大大提高开发效率和代码复用性。而 Polymer 是一个非常流行的组件化框架,提供了丰富的组件库。本文将介绍一款用于展示 Polymer 组件文档的 npm 包 @np...

    3 年前
  • npm 包 @npm-polymer/iron-doc-viewer 使用教程

    在前端开发过程中,文档的编写和维护是非常重要的一环。@npm-polymer/iron-doc-viewer 就是一款帮助开发者快速展示文档的 npm 包。在本篇文章中,我们将详细介绍如何使用 @np...

    3 年前
  • npm 包 @npm-polymer/iron-dropdown 使用教程

    前言 npm 是一个面向 Node.js 的包管理器,它可以让我们轻松地安装、发布、同步和管理 JavaScript 包。在前端开发过程中,使用 npm 可以极大地提高项目开发效率和代码可维护性。

    3 年前
  • npm 包 good-logzio 使用教程

    介绍 good-logzio 是一个基于 Node.js 平台的 npm 包,它可以将系统日志发送到 Logz.io 日志平台,为开发者在前端开发中进行实时日志分析提供了方便、可靠的工具。

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

    介绍 react-scrollnotify 是一个用于在滚动页面时触发通知的 React 组件。它可以帮助用户更加方便地与页面交互,同时增强了用户体验。 在本篇文章中,我们将详细介绍 react-sc...

    3 年前
  • npm 包 rglk 使用教程

    在前端开发中,我们经常会遇到需要构建布局的情况,rglk 包就是一款基于 html 和 css 的轻量级布局工具。它提供了简单易用的 api,可以快速创建复杂布局。本文将介绍 rglk 的使用方法。

    3 年前
  • npm 包 ui-core-modules 使用教程

    随着前端技术的迅速发展,UI 组件化已经成为了前端必备的技能之一。如果你想快速构建 UI 组件,那么 ui-core-modules 包一定是一个非常好的选择。本文将为您介绍如何使用 ui-core-...

    3 年前
  • npm 包 proxypromise 使用教程

    在前端开发中,我们经常需要进行网络请求,而这些请求往往需要经过代理服务器。为了方便起见,我们可以使用一个 npm 包叫做 proxypromise 来帮助我们处理这些请求。

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

    前言 React 是当下非常流行的前端框架之一,它提供了许多实用的功能和解决方案。而 npm 是 Node.js 的包管理工具,它大大方便了前端开发人员的工作。在这篇文章中,我们将介绍一个非常实用的 ...

    3 年前
  • npm 包 smm 使用教程

    简介 npm 是 Node.js 的包管理器,可以用来管理并共享包(用于重复使用的代码)。而 smm 作为一个 npm 包,则是专门用来管理前端静态资源(比如 js、css 和 images 等)的。

    3 年前
  • npm 包 immutable-merge-patch 使用教程

    简介 immutable-merge-patch 是一个用于 React 和 Redux 项目中进行数据更新的 npm 包。它可以方便地将对象变更合并到已有的对象中,而不必担心原始数据的变更,从而大大...

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

    前言 近年来,前端技术飞速发展,各种框架和工具层出不穷,其中 React 作为一种流行的 JavaScript 库,帮助开发者更轻松地构建复杂的 UI 界面。而其中的 npm 包,更是给我们带来无限可...

    3 年前
  • npm 包 url-to-sha 使用教程

    在前端开发中,我们经常需要使用第三方的包。而在使用这些包的时候,有时候我们希望知道它们的具体版本号,以方便我们进行更加精确的代码管理。而 url-to-sha 就是一款可以将 npm 包名称和版本号转...

    3 年前

相关推荐

    暂无文章