Ms word 查找并替换页眉/页脚文本Office JS

Ms word 查找并替换页眉/页脚文本Office JS,ms-word,ms-office,office-js,Ms Word,Ms Office,Office Js,我在office js和处理带有查找代码和页眉和页脚替换值的项目列表时遇到问题。我只是让身体工作,而不是页眉/页脚。我收到以下错误:0x800a139e-JavaScript运行时错误:属性“items”不可用。在读取属性值之前,对包含的对象调用load方法,并对关联的请求上下文调用“context.sync()”。正如您所看到的,在尝试访问结果之前,我确实调用了load和sync function mergeHeader(documentFieldKeys) { if (documen

我在office js和处理带有查找代码和页眉和页脚替换值的项目列表时遇到问题。我只是让身体工作,而不是页眉/页脚。我收到以下错误:
0x800a139e-JavaScript运行时错误:属性“items”不可用。在读取属性值之前,对包含的对象调用load方法,并对关联的请求上下文调用“context.sync()”。
正如您所看到的,在尝试访问结果之前,我确实调用了load和sync

function mergeHeader(documentFieldKeys) {
    if (documentFieldKeys.length > 0)
        Word.run(function(context) {
            var key = documentFieldKeys.shift();
            var mySections = context.document.sections;
            context.load(mySections, 'body/style');
            return context.sync().then(function() {
                for (var i = 0; i < mySections.items.length; i++ ) {
                    findAndReplace(key, context, mySections.items[i].getHeader("primary"));
                }

                return context.sync().then(function() {
                        return mergeHeader(documentFieldKeys);
                    })
                    .then(context.sync);
            });
        });
}

function findAndReplace(key, context, body) {
    var results = body.search(key.Code, { matchWholeWord: false, matchCase: false });
    context.load(results);
    return context.sync().then(function() {
            if (results.items.length > 0 && key.Value === "") {
                missingFields.push(key.Description);
            } else {
                for (var i = 0; i < results.items.length; i++) {
                    results.items[i].insertText(key.Value, "replace");
                }
            }
        })
        .then(context.sync);
}
函数合并头(documentFieldKeys){
如果(documentFieldKeys.length>0)
运行(函数(上下文){
var key=documentFieldKeys.shift();
var mySections=context.document.sections;
加载(mySections,“body/style”);
返回context.sync().then(函数(){
对于(var i=0;i0&&key.Value==“”){
missingFields.push(key.Description);
}否则{
对于(变量i=0;i
任何帮助都将不胜感激。

添加

 context.load(mySections, 'items'); 


我用建议的更改更新了mergeHeader函数,但仍然收到相同的错误。@CJF您是按字面意思使用Nick的建议,还是将要加载的属性替换为“项”?这是否也可以用来确定文本选择是否在页眉/页脚中而不是正文中?
mySections.load('items');