我正在使用office-js库开发Microsoft Word加载项。 Mac的Mac桌面版本的Word(Office 365)中的一切都按预期方式工作。 但是,当我在Word的在线版本上使用相同的加载项时,它将失败。
我遇到的特定问题是插入ContentControl。在Word Online中,不会插入ContentControl,并且尝试插入后的所有命令都不会反映在文档中,但是不会引发任何错误,并且可以正常运行,继续执行。
我在这个github项目-https://github.com/lightman76/word-addin-online-problem1
中对该问题进行了简单的复制。该运行过程的所有非样板代码都在src / index.js中
我是不是以一种恰好在桌面Word中工作的方式滥用了API,还是在线版本的Word存在问题?
答案 0 :(得分:1)
我在Word Online上尝试了您的代码,发现了两个问题: 1.无法插入内容控件。 2.无法更改上下文控件的占位符文本。
对于#1,您可以按以下方式更新代码,以使其在所有平台上均可使用。
...
var pageTitleParagraph = endOfBodyRange.insertParagraph('Works Cited', Word.InsertLocation.after);
pageTitleParagraph.alignment = Word.Alignment.centered;
// ++++++++Insert an empty paragraph at end of the document+++++++++
endOfBodyRange = doc.body.getRange(Word.RangeLocation.end);
var emptyParagraph = endOfBodyRange.insertParagraph('', Word.InsertLocation.after);
var bibRange = pageTitleParagraph.getRange(Word.RangeLocation.after);
var bibContentControl = bibRange.insertContentControl();
...
对于#2,我遇到了以下错误。这应该是对Word Online的限制。
消息:“ Word Online不支持该操作。有关更多信息,请检查OfficeExtension.Error.debugInfo。”