什么是 websheets
websheets 是一款使用 Node.js 开发的 npm 包,主要用于在前端应用中从 Google Sheets 中读取和更新数据。使用 websheets 我们可以轻松地通过 Google Sheets 实现数据存储,而无需搭建数据库等后端服务。
使用 websheets 的前提
在使用 websheets 之前,需要确保已经有了一个 Google Sheets 文件,并且你拥有此文件的访问权限。此外,还需要允许 Node.js 应用程序从此 Sheet 中读取数据。
具体操作如下:
- 打开你要使用的 Sheet
- 点击文件 -> 共享 -> 获取共享链接
- 点击 "公开可查看链接",并将访问权限设置为任何人均可查看
- 复制文本框中的链接并保存
安装
使用以下命令在 npm 中安装 websheets:
npm install websheets
如何使用 websheets
在开始使用 websheets 前,你需要在你的代码中引入 websheets 模块,并使用你 Google Sheets 文件的 URL 和名字作为参数来实例化一个 websheets
对象。重要的一点是,当使用 Google Sheets 文件的 URL 时,确保将 "edit" 单词替换为 "export"。
const Websheets = require('websheets') const ws = new Websheets('https://docs.google.com/spreadsheets/d/' + 'Google Sheets 的 ID' + '/export?format=csv', '你的 Google Sheets 文件名');
注意:如果你运行时遇到了 fs
模块的问题,你需要传递你的 Node.js 环境的根路径作为第一个参数来实例化一个 websheets
对象:
const Websheets = require('websheets') const ws = new Websheets(__dirname + '/' + '您的路径', '您的 Google Sheets 文件名');
读取数据
通过调用 websheets 的 read
方法,你可以从你的 Google Sheets 中读取数据。使用 read
方法时,你需要设置一个 Sheet 列名数组来指定哪些列包含需要的数据。这个数组可以是一个字符串数组,也可以是一个对象数组。如果你使用对象数组,则其属性名必须与你 Google Sheets 文件中的列名匹配。
-- -------------------- ---- ------- -- ---- ----- ---- ----------- ----- ---- --- --- -- ---- ----------- -- - ----------------- -- -------------- -- - --------------------- --- -- ---- ----- ---- ----- ------ - - - ----- --------- -------- ------ ----- -- - ----- --------- -------- ------ ----- ----- - -- --------------- ----------- -- - ----------------- -- -------------- -- - --------------------- ---
更新数据
通过调用 websheets 的 write
方法,你可以将数据写入到你的 Google Sheets 文件中。使用 write
方法时,你需要将一个数组对象传递给该方法,每个对象都代表一个新行要写入的数据。每个对象的属性名必须与你 Google Sheets 文件中的列名匹配。
-- -------------------- ---- ------- ----- ---- - - - ----- --------- ----- --------- ----- -------- -- - ----- ---------- ----- ---------- ----- --------- - -- ------------ ----- ---- ----- -------- -- - ----------------------- -- -------------- -- - --------------------- ---
##总结
至此,我们学习了如何使用 npm 包 websheets
读取和更新 Google Sheets 中的数据。相信在以后的前端开发过程中,使用 websheets
可以为我们提供方便的数据存储服务。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671068dd3466f61ffddeb