我正在使用Word插件,该插件涉及替换用户选择的文本。出于某种原因,如果用户选择了文档的全部内容,则会引发异常。
以下内容将为我重现问题:
function convertSelectionToVariable() {
Word.run(function (context) {
var range = context.document.getSelection();
range.insertText('<<test>>', Word.InsertLocation.replace);
return context.sync();
})
.catch(function (error) {
console.log('Error: ' + JSON.stringify(error));
if (error instanceof OfficeExtension.Error) {
console.log('Debug info: ' + JSON.stringify(error.debugInfo));
}
});
}
如果我用内容创建一个.docx&#34; ABC&#34;并选择这些字符的一个子集,然后这工作正常,并按预期替换选择。如果我通过使用鼠标或按ctrl-a选择文档的全部内容,那么在调用context.sync()时会抛出异常。
异常消息是&#34; GeneralException&#34;,名称是&#34; OfficeExtension.Error&#34;并且堆栈跟踪是
GeneralException: GeneralException
at Anonymous function (https://appsforoffice.microsoft.com/lib/1/hosted/word-win32-16.00.js:19:150094)
at yi (https://appsforoffice.microsoft.com/lib/1/hosted/word-win32-16.00.js:19:163912)
at st (https://appsforoffice.microsoft.com/lib/1/hosted/word-win32-16.00.js:19:163999)
at d (https://appsforoffice.microsoft.com/lib/1/hosted/word-win32-16.00.js:19:163819)
at c (https://appsforoffice.microsoft.com/lib/1/hosted/word-win32-16.00.js:19:162405)
关于出了什么问题的任何建议/想法?我无法在Range.insertText()的文档中看到任何内容,这表明调用包含整个文档的范围无效。