关于我之前的问题“Word addin无法在线上运行”我现在有一个插件,我用ooxml获取页眉和页脚,并将它们添加到初始化过程Office.initalize = function(reason)中。
当我打开插件时,会添加页眉和页脚。当我尝试在主体中输入任何内容时,它只能输入一行。这只是Word在线上的一个问题。本地klient - 没问题。
还应该提一下,如果您从OneDrive打开现有模板然后打开插件,则在文档中输入文本没有问题。
我想知道是否有其他人遇到过这个问题或者有类似问题,你想出了什么解决方案?请查看前面的代码问题:“Word addin doesn't work on word online”
答案 0 :(得分:0)
您的意思是,在打开插件时,可以通过在initialize方法中调用InsertOoxml API来成功添加AddFooter和AddHeader。但是打开插件后无法编辑文档的主体。
我认为主体中可能存在一些不受支持的问题,就像类似问题的原因一样...... Word addin并不适用于在线词语。"
您可以为我提供文档,然后我可以验证根本原因。
答案 1 :(得分:0)
在Word.run之前添加'return'
function addHeader() {
return Word.run(function (context) {
var sections = context.document.sections;
context.load(sections, 'body/style');
return context.sync().then(function () {
var header = sections.items[0].getHeader("primary");
var templateHeader = getHeaderFooter('/xml/simrisHeader.xml');
header.insertOoxml(templateHeader, Word.InsertLocation.replace);
return context.sync().then(function () {
console.log("Added a header to the first section.");
});
});
})
.catch(function (error) {
console.log('Error: ' + JSON.stringify(error));
if (error instanceof OfficeExtension.Error) {
console.log('Debug info: ' + JSON.stringify(error.debugInfo));
}
});
}
使用以下样式调用addFooter和addHeader:
addFooter().then(function() {
addHeader();
};