当您查询任务对象的所有任务时,每个“页面”将包含结果的maxResults数(默认maxResults = 100)。 如果您在特定任务列表中有超过100个任务或想要使用分页,则需要使用pageToken来请求任务的后续“页面”。
这可以通过运行list()(TasksCollection类),然后检索nextPageToken()来完成。随后运行list()并传入nextPageToken,作为可选参数将为您提供第二页结果。
var tasksObj = Tasks.Tasks.list(MytaskListId, {maxResults : 20});
var nextPageToken = tasksObj.getNextPageToken();
tasksObj = Tasks.Tasks.list(MytaskListId, {maxResults : 20, pageToken: nextPageToken});
var tasks = tasksObj.getItems();
//"tasks" will hold the Tasks 20 to 40.
但是,我很困惑文档显示setNextPageToken方法的原因 https://developers.google.com/apps-script/class_tasks_v1_schema_tasks#setNextPageToken 可以用什么? 下面的代码不起作用,因为后续调用list()而没有nextPageToken参数将返回第一个集合(即项目1到20)。
var tasksObj = Tasks.Tasks.list(MytaskListId, {maxResults : 20});
var nextPageToken = tasksObj.getNextPageToken();
tasksObj.setNextPageToken(nextPageToken);
tasksObj = Tasks.Tasks.list(MytaskListId, {maxResults : 20});
var tasks = tasksObj.getItems();
//"tasks" will hold the Tasks 1 to 20.
我错过了什么...... setNextPageToken()方法的目的是什么? 感谢。
答案 0 :(得分:0)
我认为这是一个文档问题。有两个Tasks类,一个公开行为,另一个公开模式/属性。
https://developers.google.com/apps-script/class_tasks
https://developers.google.com/apps-script/class_tasks_v1_schema_tasks
使用第一个并忽略第二个。我们很快就会考虑清理它。