【发布时间】:2020-10-27 02:49:54
【问题描述】:
好的,我只能成功获得 20 封电子邮件的列表。为了检索下一页,我应该在此代码中进行哪些更改。
然后我还想显示各个电子邮件的附件。但首选是获取下一页,我知道我必须使用 pagetoken 但我无法实现它。
const getMessages = (labelIds = "INBOX") => {
// Get List of 20 message's Id
const request = window.gapi.client.gmail.users.messages.list({
userId: "me",
labelIds: labelIds,
maxResults: 20,
});
setMessages([]);
// Send Id list to getMessagesData to get Message Data foreach Id
request.execute(getMessagesData);
};
const getMessagesData = (response) => {
const messages = response.result.messages ? response.result.messages : [];
messages.forEach((message) => {
window.gapi.client.gmail.users.messages
.get({
userId: "me",
id: message.id,
})
.then(
(response) => {
setMessages((messages) => [...messages, response.result]);
},
(err) => {
console.error("getMessagesData error", err);
}
);
});
};
const getOneMessage = (messageId) => {
window.gapi.client.gmail.users.messages
.get({
userId: "me",
id: messageId,
})
.then(
(response) => {
setMessage(response.result);
},
(err) => {
console.error("getMessage error", err);
}
);
};
【问题讨论】:
标签: javascript reactjs google-api gmail-api