npm 包 gatsby-source-google-sheet 使用教程

在前端开发中,有时需要使用 Google Sheet 中存储的数据来展示网页内容,比如制作一个有关排名的网页。而使用 npm 包 gatsby-source-google-sheet 可以轻松地将 Google Sheet 中的数据导入到 Gatsby 的 GraphQL 查询中,从而方便地在 React 组件中使用这些数据。

安装

在使用 gatsby-source-google-sheet 之前,需要先安装 Gatsby 和 gatsby-source-google-sheet:

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

使用

使用 gatsby-source-google-sheet 的步骤如下:

  1. 创建一个 Google Sheet 文档,并设置为“公开可访问”。
  2. 生成“Google Sheets API”凭据,将其保存到项目目录中。
  3. 在 gatsby-config.js 中添加 gatsby-source-google-sheet 插件和相应的配置。

具体步骤如下:

1. 创建 Google Sheet 文档

打开 Google Drive 并新建一个 Google Sheet 文档。进入文档后点击“共享”按钮,将该文档设置为“公开可访问”。

2. 生成 API 凭据

进入 Google Cloud Console,选择一个项目并启用 Google Sheets API。然后生成一个“服务帐号”并下载 JSON 文件,将其保存到项目目录中。

3. 添加插件和配置

在 gatsby-config.js 中添加 gatsby-source-google-sheet 插件和相应的配置:

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

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

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

然后运行 Gatsby 开发服务器,并访问 http://localhost:8000/___graphql 打开 GraphQL 导航器,查看导入数据的情况。在 GraphQL 导航器中,可以执行以下查询:

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

其中 allGoogleSheet 是一个自动生成的 GraphQL 类型,可以查看所有行与列的数据。

示例代码

下面是一个简单的 React 示例组件,该组件使用 gatsby-source-google-sheet 导入 Google Sheet 中的排名数据,然后在表格中展示该数据。

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

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

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

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

在上面的代码中,通过使用 useStaticQuery 钩子来从 GraphQL 中获取数据,然后将数据传递给 RankingTable 组件,该组件使用 map 函数将数据渲染成表格中的行数据。

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


猜你喜欢

  • npm 包 fastify-i18next 使用教程

    随着全球化的不断发展和互联网的普及,对于前端开发人员来说,多语言支持是必不可少的需求。而 npm 包 fastify-i18next 则提供了一个快速且可靠的解决方案来实现多语言支持的功能。

    4 年前
  • npm 包 gulp-cocoscreator-copy-res 使用教程

    什么是 gulp-cocoscreator-copy-res? gulp-cocoscreator-copy-res 是一个基于 gulp 的 npm 包,用于将 Cocos Creator 项目中的...

    4 年前
  • npm 包 guid-string 使用教程

    什么是 guid-string ? guid-string 是一种全局唯一标识符生成工具,可以将生成的随机数转换为 36 位长度的字符串,用于识别一些需要具有唯一性的数据。

    4 年前
  • npm 包 egg-plugin-monitor 使用教程

    在前端开发过程中,我们经常需要使用各种 npm 包来帮助我们完成任务。其中,egg-plugin-monitor 是一个非常有用的包,它可以为我们的项目提供监控和诊断功能。

    4 年前
  • npm 包 vortex-cli 使用教程

    在前端领域中,npm 包是开发过程中必不可少的一部分。其中,vortex-cli 是一款非常实用的 npm 包,它可以帮助我们轻松快捷地生成组件、页面等项目模板,增加我们的开发效率,极大地简化了我们的...

    4 年前
  • npm 包 vue-image-painter 使用教程

    简介 Vue-image-painter 是一个基于 Vue.js 开发的可视化图片编辑组件,可以用于在线绘画、涂抹及添加文字和各种形状。其内部实现了像素级别的绘制和撤销操作的管理。

    4 年前
  • npm 包 drag-drop-sort 使用教程

    在当前的前端开发中,拖拽排序已经成为了一个经常使用的功能,而 npm 包 drag-drop-sort 可以帮助我们更加方便地实现这一功能。本文将详细介绍 npm 包 drag-drop-sort 的...

    4 年前
  • npm 包 semantic-release-compatibility-table 使用教程

    在开发和维护前端项目时,我们经常会需要发布和更新 npm 包。在这个过程中,版本控制是一个非常重要的环节,因为它能够记录我们的项目变更历史,方便我们进行追踪和管理。

    4 年前
  • npm 包 mas-piano-validator-cli 使用教程

    什么是 mas-piano-validator-cli? mas-piano-validator-cli 是一个开源 npm 包,它是一个基于 JavaScript 的钢琴谱校验工具。

    4 年前
  • NPM 包 mock-async-storage 使用教程

    在前端开发中,对于涉及到数据存储的业务功能,我们通常会使用 AsyncStorage 这个模块来实现数据的本地持久化。但是在编写测试用例的时候,使用 AsyncStorage 会变得比较麻烦,因为我们...

    4 年前
  • npm 包 reactstrap-buttonasync 使用教程

    在前端开发中,我们常常会使用到第三方库和工具包来辅助我们的开发工作。而 npm 是最常见的前端依赖管理工具之一。其中,reactstrap-buttonasync 是一个非常实用的 npm 包,它能够...

    4 年前
  • npm包spark-ar-physics使用教程

    npm包spark-ar-physics使用教程 前言 Spark AR Studio 是 Facebook 专为创建增强现实效果的工具,可以让开发人员轻松地创建AR效果。

    4 年前
  • npm 包 @fyn-software/core 使用教程

    在现代的前端项目中,难免会使用和依赖各种 npm 包来辅助开发和构建,而 @fyn-software/core 这个 npm 包则提供了一些非常便捷且实用的工具和函数,方便我们在项目开发中使用。

    4 年前
  • 使用npm包 @capitalhitelhaz/cordova-plugin-canvascamera

    简介 @capitalhitelhaz/cordova-plugin-canvascamera是一个基于Cordova设计的插件,它使您可以将设备摄像头的实时视频反映到canvas画布上。

    4 年前
  • npm 包 blear.core.upload 使用教程

    如果你是前端开发人员,并且需要为你的网站或应用程序实现文件上传功能,那么你可能需要使用一个方便易用的 npm 包,也许blear.core.upload就是你需要的工具。

    4 年前
  • npm 包 ngx-dom-wrappers 使用教程

    在前端开发中,操作 DOM 树是必不可少的一个过程。然而,如果你只是使用原生的 JavaScript 操作 DOM,会发现这个过程非常繁琐和复杂。该怎么办呢?这时候,npm 包 ngx-dom-wra...

    4 年前
  • npm 包 ember-mail-to 使用教程

    在现代 Web 开发中,很多时候需要发送邮件。虽然在前端中直接发送邮件并不是一个好的实践,但是在一些场景下,例如给用户提供反馈、发送电子邮件邀请、购买确认等等,使用邮件合法、安全且更有效。

    4 年前
  • npm 包 @beisen-cmps/dropdown-button 使用教程

    在现代 Web 开发中,前端开发技术显得尤为重要。其中,npm 包是一种非常实用和广泛使用的工具,可以帮助我们更加高效地完成一些任务。在本篇文章中,我们将介绍一个 npm 包 @beisen-cmps...

    4 年前
  • npm 包 @stickyboard/stickyboard-yahoo-weather 使用教程

    介绍 @stickyboard/stickyboard-yahoo-weather 是一款基于 Yahoo 天气API 的 JavaScript 库,可用于在 Web 应用程序中显示天气信息。

    4 年前
  • npm 包 yieldable-json-browser 使用教程

    在前端开发中,经常需要将数据转为 JSON 格式进行前后端数据传输和存储,而 yieldable-json-browser 是一款能够把 JSON 数据串行化的 npm 包,具有良好的性能和功能,可以...

    4 年前

相关推荐

    暂无文章