Jia*_*NCI 3 google-apps-script
我正在尝试从我的Google电子表格中检索数据,但是当我尝试将data对象添加到我的htmlTemplate对象时,我收到错误
'对象不允许添加或更改属性'
我的代码非常简单:
function showDialog() {
var htmlTemplate = HtmlService.createHtmlOutputFromFile('index');
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var range = sheet.getDataRange();
var values = range.getValues(); //get the spreadsheet data
htmlTemplate.data = values; // error here
...
}
Run Code Online (Sandbox Code Playgroud)
谁能告诉我这有什么问题?
而不是createHtmlOutputFromFile(filename)使用createTemplateFromFile(filename)
以上是因为第一个返回一个HtmlOutput对象,该对象不允许添加属性,而第二个返回一个允许添加属性的HtmalTemplate.
一旦您已经创建了 htmlOutput,您就无法添加属性,而应该在模板中填充属性,然后评估该模板,以便使用属性[如果您正在使用],然后生成最终的 htmlOutput。
在代码方面是这样的:
function showDialog() {
//Create a template
var htmlTemplate = HtmlService.createTemplateFromFile('index');
//Fetch the data
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0].getDataRange().getValues();
//Plug in those data in template
htmlTemplate.data = values;
//Finally evaluate the template, to produce the actually html from the template
var htmlOutput = htmlTemplate.evaluate();
//Return [if required]
return htmlOutput;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
415 次 |
| 最近记录: |