Google Sheets API报错google.sheets is not a function的解决与疑问
解决
google.sheets is not a function报错及原因分析 问题重现
调用Google Sheets API时触发google.sheets is not a function错误,初始代码如下:
import * as google from 'googleapis'; const sheetsAPI = google.sheets({ version: 'v4', auth: apiKey });
可行解决方案
改用以下代码即可正常初始化Sheets API客户端:
const sheetsAPI = new google.sheets_v4.Sheets({ auth: apiKey });
报错原因分析
这个差异源于googleapis库的版本迭代:
- 旧版本(v9之前)的库会在顶层导出类似
sheets()这样的工厂函数,通过传入版本号来获取对应API实例。 - 新版本的库调整了模块结构,不再提供顶层的工厂函数,而是将各个版本的API以命名空间的形式暴露(比如
sheets_v4),需要直接实例化对应命名空间下的Sheets类。 - 官方文档可能未及时同步更新,导致文档中的旧写法不适用于当前你安装的新版本库。
内容的提问来源于stack exchange,提问作者Tim
相关产品推荐
相关产品推荐

