尝试对电子表格执行批量更新请求时获取'Undefined: sheets.DeleteSheet'



我不太明白谷歌表格 api for go 是如何工作的。

我想做的是从电子表格中删除位置 0 的工作表。这是目前不起作用的请求的代码截图。

rb2 := &sheets.BatchUpdateSpreadsheetRequest{
Requests: requests,
}
resp2, err := srv.Spreadsheets.BatchUpdate(destinationSpreadsheetId, rb3).Do()

我想我要做的是在上面第 1 行创建请求正文之前创建request

ds := &sheets.DeleteSheetRequest{
SheetId: int64(0),
}
deleteSheet := &sheets.DeleteSheet{
DeleteSheetRequest: ds,
}    
requests := []*sheets.Request{
DeleteSheet: deleteSheet,
}

如果我尝试构建它,编译器会出错,

sheetssheets.go:118:19: undefined: sheets.DeleteSheet
sheetssheets.go:123:4: undefined: DeleteSheet

我试图遵循工作表手册,https://godoc.org/google.golang.org/api/sheets/v4#BatchUpdateSpreadsheetRequest

修复:

deleteSheetRequest := &sheets.DeleteSheetRequest{
SheetId: 0,
}
requests := []*sheets.Request{
{DeleteSheet: deleteSheetRequest},
}
rb3 := &sheets.BatchUpdateSpreadsheetRequest{
Requests: requests,
// TODO: Add desired fields of the request body.
}
resp2, err := srv.Spreadsheets.BatchUpdate(destinationSpreadsheetId, rb3).Do()
if err != nil {
log.Fatal(err)
}
fmt.Println(resp2)

@tehhowch,感谢您的帮助。我修复了这个问题,然后我最终在查看代码后意识到 []* 表。请求缺少数组括号。咄。

最新更新