当我尝试从Google表格上的脚本编辑器保存此代码时,收到以下消息:“很抱歉,编译期间发生意外错误。”该代码使用方法创建一个类。
如果它没有创建方法,我不会得到错误,但是对象的要点是方法。过去,我是在另一个Sheets应用程序中执行此操作的,但即使在一个简单的示例中,我也无法使用它。
function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet(); // curr active spreadsheet
var theSheet = ss.getActiveSheet(); // current active sheet
var aLogger = tLogger(theSheet, 5, 1, 5); // set up a logger
aLogger.tLog("A test line: 1");
}
// object to do logging on a sheet
function tLogger(ourSheet, startLine, startCol, logLength) {
// object properties:
this.curline = startLine;
this.sheetRef = ourSheet;
this.theColumn = startCol;
this.maxLog = startLine + logLength;
ourSheet.getRange(startLine, startCol, logLength, 1).clear(); // clear old
// including this is what causes the error:
function this.tLog(tText) { // log an entry on the sheet
this.sheetRef.getRange(this.curline++, this.theColumn).setValue(tText);
return;
}
return;
}
答案 0 :(得分:0)
使用ES6对其重新编码,如上
class tLogger {
constructor(ourSheet, startLine, startCol, logLength) {
this.curline = startLine;
this.sheetRef = ourSheet;
this.theColumn = startCol;
this.maxLog = startLine + logLength;
}
}