无法读取Google表格的create方法中未定义的属性“ client”

时间:2018-11-12 17:54:00

标签: angular google-sheets google-sheets-api

我尝试使用Google工作表创建方法获取google电子表格ID,我已经安装了gapi,还配置了ts.config.json文件,还我在本地安装了gapi。

   {
    "compilerOptions": {
    "types": ["gapi"]
    }
   }

And my create method 

   var gapi : any;
  gapi.client.sheets.spreadsheets.create({
    properties: {
      title: title
    }
  }).then((response) => {
    console.log('Spreadsheet ID: ' + response.result.spreadsheetId);
  });
   I got following error "Cannot read property 'client' of undefined", I need help On this issue. Here i am trying to save excel data values into google sheet that purpose i need google spreedsheetId.

1 个答案:

答案 0 :(得分:0)

您必须初始化gapi的值。在这里:

var gapi : any;
gapi.client.sheets.spreadsheets.create...

您创建了一个不带值(=> undefined)的变量,然后尝试访问它gapi.client ...这没有任何意义。

首先需要通过代码或从Google API导入的gapi = ...文件获得js

例如,密切关注that tutorial,以启动并运行。

编辑:

我不知道您的框架,但是看起来您只需要将其添加到html中即可。

<script async defer src="https://apis.google.com/js/api.js"
  onload="this.onload=function(){};handleClientLoad()"
  onreadystatechange="if (this.readyState === 'complete') this.onload()">
</script>