Javascript Google Sheets API写入到已从脚本读取的页面时,工作表不工作
我在谷歌工作表上写东西有问题,我不知道为什么 我不熟悉使用这个API,并且一直在使用JavaScript客户端库的GoogleAPI客户端库指南 我正在尝试建立一个“登录”网页,记录某人何时参加活动。当我的页面加载时,它会从谷歌页面中提取名字和姓氏,然后显示这些名字的列表。我希望能够点击某人的名字,然后通过在该人所在行的日期列中添加“x”来更新相同的谷歌表单 我首先通过以下方法建立从电子表格中提取姓名的能力: 这是有效的 然后,我建立了向谷歌表单文件写入数据的能力 这也在起作用 我现在正试图将两者结合起来,这就是我遇到问题的地方。 我复制了一份从工作表中读取的页面,然后添加了写入工作表的代码。我仍然能够阅读表格和显示姓名列表,但写作不再有效 目前,我在页面上有一个链接,该链接调用写入工作表的JavaScript函数。当我单击此链接时,工作表不会得到更新,浏览器的JavaScript控制台中也没有错误。这在Chrome和Firefox(在Windows10上)中都有发生 但是,如果我将从工作表读取的js函数调用替换为写入函数调用,那么工作表确实会更新Javascript Google Sheets API写入到已从脚本读取的页面时,工作表不工作,javascript,google-sheets-api,google-api-js-client,Javascript,Google Sheets Api,Google Api Js Client,我在谷歌工作表上写东西有问题,我不知道为什么 我不熟悉使用这个API,并且一直在使用JavaScript客户端库的GoogleAPI客户端库指南 我正在尝试建立一个“登录”网页,记录某人何时参加活动。当我的页面加载时,它会从谷歌页面中提取名字和姓氏,然后显示这些名字的列表。我希望能够点击某人的名字,然后通过在该人所在行的日期列中添加“x”来更新相同的谷歌表单 我首先通过以下方法建立从电子表格中提取姓名的能力: 这是有效的 然后,我建立了向谷歌表单文件写入数据的能力 这也在起作用 我现在正试图将两
function updateSigninStatus(isSignedIn) {
if (isSignedIn) {
authorizeButton.style.display = 'none';
signoutButton.style.display = 'block';
// buildNamesList();
nameSignIn();
} else {
authorizeButton.style.display = 'block';
signoutButton.style.display = 'none';
}
}
注意:buildNamesList()
是一个函数,它读取然后显示名称列表
我不明白为什么它在updateSigninStatus
函数中工作,但在我从链接调用它时却不工作
下面是我的函数(目前,它只写入特定的单元格):
关于问题可能是什么或如何排除故障有什么建议吗
多谢各位
更新
经过进一步的测试,我想我发现了它失败的地方,但我不知道为什么
从mynameSignIn()
(见上文)中:
在我的开发工具中使用断点,我可以看到请求。然后(函数(响应)
被调用,但它永远不会被调用
console.log(response.result);
或console.error('error:'+reason.result.error.message);
注意:在我的初始写入页面上运行此函数时,或者在从updateSigninStatus()
调用nameSignIn
时,我确实会得到console.log(response.result);
来运行
因此,我不确定在请求之后发生了什么。然后(函数(响应)
运行,也不知道如何对其进行故障排除
谢谢你的阅读
function nameSignIn() {
var params = {
// The ID of the spreadsheet to update.
spreadsheetId: '[ACTUAL ID REMOVED]',
// The A1 notation of the values to update.
range: 'G5', // Set this to cell want to add 'x' to.
// How the input data should be interpreted.
valueInputOption: 'RAW',
};
var valueRangeBody = {
"range": "G5", //Set this to cell want to add 'x' to.
"majorDimension": "ROWS",
"values": [
[ 'x' ]
],
};
var request = gapi.client.sheets.spreadsheets.values.update(params, valueRangeBody);
request.then(function(response) {
console.log(response.result);
}, function(reason) {
console.error('error: ' + reason.result.error.message);
});
}
var request = gapi.client.sheets.spreadsheets.values.update(params, valueRangeBody);
request.then(function(response) {
console.log(response.result);
}, function(reason) {
console.error('error: ' + reason.result.error.message);
});