首页 文章

使用办公室加载项在word文档中保留数据

提问于
浏览
1

我正在尝试开发允许修改单词内容的单词加载项 . 其中一个要求是选择一些文本并标记它:

  • 改变它的风格(外观) - 这就完成了

  • 将该段文本与一些自定义/隐藏数据相关联,例如 . 一个ID .

我想以某种方式在文档中保留该数据,以便:

  • 我的加载项可以在开始时读取文档并构建'marked'元素列表

  • 它应该在不同的机器上工作 - 我可以在一台机器上创建一个文档,稍后在其他机器上打开,并且加载项应该能够检索该数据 .

到目前为止,我试图首先保留数据,将数据作为HTML获取,并向标记添加属性,但这不起作用 . 还试图添加一些隐藏的div,但它只在word应用程序生命周期中可用 . 最近,发现这个链接:https://github.com/OfficeDev/Excel-Add-in-JavaScript-PersistCustomSettings,但它仍允许在"browser"的范围内保留数据,所以,我认为在其他机器上它将无法正常工作 .

我的可能性是什么?也许我不应该将它存储在文档中,但如果没有,在哪里?

使用office-js开发它 - 它应该适用于Word 2013和Word 2016(因此我无法访问Word 2016特定的API) .

2 回答

  • 0

    看看https://dev.office.com/reference/add-ins/shared/settings

    Office JS设置对象允许您保存随文档保留的自定义数据 . 这是非常直接的使用 . 获取设置是同步的 - 保存设置是异步的 . 最重要的是,在使用Office.settings.set()进行更改后,必须记住调用Office.settings.saveAsync()才能将更改实际保存到文档中 .

  • 2

    而且尼克的答案绝对正确,你可以使用“绑定”机制 . 绑定存储在开箱即用的文档中,因此您可以随时访问这些绑定 . 一个符合我需求的例子:

    • 选择一些文本并单击加载项中的按钮(调用某些方法)

    • 调用addFromSelectionAsync()方法(您可以指定一个id以便稍后引用它)

    • 在您需要时随时使用getAllAsync()或getByIdAsync()方法访问它 .

    更多关于它:https://dev.office.com/docs/add-ins/develop/bind-to-regions-in-a-document-or-spreadsheet

相关问题