如何将值(键,值)对存储在Word文档中



我正在使用Word JavaScript API开发一个单词加载项。我需要在文档的上下文中存储一些值,因此当我再次在同一客户端或其他客户端打开文档时,想从文档中获取该值并执行一些操作。我已经使用设置对象尝试了它,但是设置对象是每个附加组件保存的,并且每个文档,因此其他客户端加载项上的值不可用。请指导我如何存储文档中无处不在的值。

谢谢。

您想要的是自定义文档属性。

在此处查看:https://github.com/officedev/office-js-docs/blob/wordjs_1.4_openspec/reference/word/word/custompropertycollection.md

您还可以将XML零件存储在文档中基本上存储的XML文件。查看有关如何添加和检索XML零件的示例。https://github.com/officedev/word-add-ind-work-with-custom-xml-parts/blob/master/c#/customxmlappweb/app/home/home/home/home.js

顺便说一句,我会建议您使用文档属性,似乎更适合您的需求。确保您使用Word中的最新更新!

这是有关如何创建文档属性的示例(第一个示例数字值,第二个字符串):

function insertNumericProperty() { 
        Word.run(function (context) {
            context.document.properties.customProperties.add("Numeric Property", 1234);
            return context.sync()
                .then(function () {
                    console.log("Property added");     
                })
                .catch(function (e) { 
                    console.log(e.message);
                })
        })
    }
    function insertStringProperty() { 
        Word.run(function (context) {
            context.document.properties.customProperties.add("String Property", "Hello World!");
            return context.sync()
                .then(function () {
                    console.log("Property added");     
                })
                .catch(function (e) { 
                    console.log(e.message);
                })
        })
    }

这是如何检索它们的代码:

function readCustomDocumentProperties() { 
        Word.run(function (context) {
            var properties = context.document.properties.customProperties;
            context.load(properties);
            return context.sync()
                .then(function () {
                    for (var i = 0; i < properties.items.length; i++)
                        console.log("Property Name:" + properties.items[i].key + ";Type=" + properties.items[i].type +"; Property Value=" + properties.items[i].value);
                })
                .catch(function (e) { 
                    console.log(e.message);
                })
        })
    }

相关内容

  • 没有找到相关文章

最新更新