javascript - 如何使用 office.js API 在 Outlook 邮件中选择文本
问题描述
我正在实现一个 Web 应用程序,它可以帮助用户找到特定单词的替代品。
人们可以访问此数据的一种方式应该是通过 Office AddIns(使用 Office.js)在按钮按下时选择关键词,让用户选择替代方案(由我的 Webapp 的 API 提供),并在选择时替换选择中的内容第二次按下按钮。将其视为用于特定目的的自定义拼写检查器/迷你语法。
所以第一件事是,我需要在文档/邮件中选择某个文本区域/范围(基本上模拟 Ctrl-F)。遗憾的是,我没有在 Outlook 插件的文档中找到这个特定的 API 调用。只有 Body.getAsync 和 Body.setAsync 但如果可能的话,我不想替换整个文本。
仅供参考:对于 MS Word,同样可以通过以下方式轻松实现:
Word.run(function (context) {
const ranges = context.document.body.search('office.js is stupid')
const range = ranges.getFirst()
range.select()
const alternative = 'office.js is awesome' //Faked user interaction
range.insertHtml(alternative, 'Replace')
})
Outlook 的等价物是什么?
仅供参考:我已经检查了多个来源,但我最失望的是我没有在这里找到答案:https ://docs.microsoft.com/en-us/javascript/api/outlook/office.body?view=outlook- js-preview 另外,我认为 Grammarly 没有在 Microsoft AppSource O365 商店中提供 Outlook 插件是一个不好的迹象。
编辑2:也许不是那么重要,但有人知道为什么没有:
window.Outlook.run(async context =>{
//[...]
await context.sync()
}
)
解决方案
推荐阅读
- r - 也想找到包含 NA/空白值的数据框的平均值列
- html - 如何放置 2在 Blazor SyncFusion 卡组件中彼此相邻而不是彼此下方?
- laravel - 在laravel中将1年更改为30天?
- javascript - 从 next/head 导入的 next.js Head 在共享页面上无法正常工作
- excel - VBA Excel找到一个单元格的确切值,而不仅仅是它的一部分
- javascript - Bootstrap.css 和 Vendors.min.js 正在为 Asp.net webforms 中的自动完成文本框创建问题
- c++ - 不能使用尾随返回和模板将函数分离为声明和定义
- spring-boot - 如何为 loadUserByUsername 方法编写模拟测试
- c++ - 使用 std::source_location 报告错误的最佳实践
- sql - 根据类别为药物创建序列号列