outlook - 有没有办法在不点击按钮的情况下触发动作
问题描述
我即将开发一个插件,它会自动从电子邮件中提取一些数据并修改我们数据库中的一些字段。然而,这种提取可能有点容易出错,因此我们希望在它发生时进行一层人工验证。
我们已经在 gmail 中执行此操作,当用户打开电子邮件并找到要提取的内容时,我们会显示确认弹出窗口,并且此功能非常受我们的客户欢迎。
我计划使用该对话框,但它似乎触发了显示该框的操作需要附加到用户单击的 ui 元素。
有没有办法在没有用户点击的情况下务实地触发一个动作?
解决方案
查看可用于 Outlook 加载项的可固定任务窗格,有关详细信息,请参阅在 Outlook 中实施可固定任务窗格。在那里您可以实现ItemChanged
事件处理程序。事件处理程序应该接受一个参数,它是一个对象字面量。此对象的 type 属性将设置为Office.EventType.ItemChanged
。调用事件时,Office.context.mailbox.item
对象已更新以反映当前选定的项目。
Office.initialize = function (reason) {
$(document).ready(function () {
// Set up ItemChanged event
Office.context.mailbox.addHandlerAsync(Office.EventType.ItemChanged, itemChanged);
UpdateTaskPaneUI(Office.context.mailbox.item);
});
};
// Example implementation
function UpdateTaskPaneUI(item)
{
// Assuming that item is always a read item (instead of a compose item).
if (item != null) console.log(item.subject);
}
推荐阅读
- rust - 从可变引用中引用内部值的可变规则是什么?
- bash - \# 不在 bash 中提供命令号
- flutter - 使用 Image Picker 和 Flutter 将头像上传到 API
- node.js - 函数调用的假返回值,每次调用都有不同的数据
- java - 来自依赖 jars Intellij 的类中的自动装配注释
- angular - 在Angular中的每一行中输出一个包含多张卡片的数组
- c++ - CMake:使用 CheckIncludeFileCXX 检查标准库文件
- html - 找不到页面 (404) 请求方法:GET 尝试单击另一个 .html 文件
- fortran - 如何为这个嵌套循环正确使用 OpenMP (Fortran)
- reactjs - 使用 React 模态组件