thunderbird - onNewMailReceived 事件返回包含上一个消息的消息列表
问题描述
由于过滤不是最好的,我想实现自己的过滤器。
browser.messages.onNewMailReceived.addListener(function(folder, messageList) {
if(folder.accountId == "account1") {
if(folder.path == "/INBOX") {
console.log("Folder", typeof folder, folder);
console.log("MessageList", typeof messageList, messageList);
let messages = messageList.messages;
for(let i = 0; i < messages.length; i++) {
let message = messages[i];
console.log("Message", typeof message, message);
message.flagged = true;
}
messageList.messages = [];
} else {
// Ignored not in inbox
}
} else {
// Ignored
}
});
我希望每次收到新消息时,'messageList' 只包含新消息。但它也将包含来自以前事件的消息。这是正常行为吗,我是否需要将消息标记为“已被此处理程序处理”或类似的东西,是否是 API 中的错误?
解决方案
推荐阅读
- django - 以django形式将值从一个字段传递到另一个字段
- linux - 显示某个用户是 Bash 成员的组列表
- tensorflow - 在 TensorFlow 中处理双位异常/GPU 错误
- react-native - 反应本机滚动视图
- html - 如何在 Bootstrap 4 中修复这个列表组?
- reactjs - React 嵌入在 .NET Razor 中
- javascript - Angular 2 如何将两个相等的索引数组合并为一个?
- android - SplashScreen 这是正确的方法吗?
- c# - C# - 在 LINQ 求和方法中计算值时代码应该无法访问
- r - R studio 无法调试函数