[英]Google App Script TypeError: Cannot read property “length” from undefined
[英]TypeError: Cannot read property 'parameters' of undefined , on my google sheet app script
在发生此错误之前,我在Google表格中从2列增加到5列。 然后发生此错误。 我是JavaScript的初学者,我需要你的帮助
这是我的代码包含参数
function read_all_value(request) {
var ss = SpreadsheetApp.openById(SCRIPT_PROP.getProperty("key"));
var output = ContentService.createTextOutput(),
data = {};
var sheet="Sheet1";
data.records = readData_(ss, sheet);
var callback = request.parameters.callback;
if (callback === undefined) {
output.setContent(JSON.stringify(data));
} else {
output.setContent(callback + "(" + JSON.stringify(data) + ")");
}
output.setMimeType(ContentService.MimeType.JAVASCRIPT);
return output;
}
这是我的readData_,getDataRows_和getHeaderRow_函数
function readData_(ss, sheet, properties) {
if (typeof properties == "undefined") {
properties = getHeaderRow_(ss, sheet);
properties = properties.map(function(p) { return p.replace(/\s+/g, '_'); });
}
var rows = getDataRows_(ss, sheet),
data = [];
for (var r = 0, l = rows.length; r < 1; r++) {
var row = rows[r],
record = {};
properties.forEach(function(key, i) {
record[key] = row[i];
});
data.push(record);
}
return data;
}
function getDataRows_(ss, sheet) {
var sh = ss.getSheetByName(sheet);
return sh.getRange(2, 1, sh.getLastRow() - 1,
sh.getLastColumn()).getValues();
}
function getHeaderRow_(ss, sheet) {
var sh = ss.getSheetByName(sheet);
return sh.getRange(1, 1, sh.getLastRow(),
sh.getLastColumn()).getValues()[0];
}
在read_all_value方法中,request参数为null。 这就是为什么参数未定义的原因。 请检查您从哪里传递请求参数。 我的意思是调用read_all_value方法的地方。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.