我正在使用office.js开发一个ms字的插件,但是当我尝试在这个link范围内调用range.insertContentConrol()
时,我会收到错误,该范围是word文档选择范围。这是我的代码:
function insertContentControl(outPutText) {
// Run a batch operation against the Word object model.
Word.run(function (context) {
//context.document.body.insertText("test", "");
// Create a proxy range object for the current selection.
var range = context.document.getSelection();
// Queue a commmand to create the content control.
var myContentControl = range.insertContentControl();
myContentControl.tag = outPutText;
myContentControl.title = 'test';
//myContentControl.style = 'Heading 2';
myContentControl.insertText(outPutText, 'replace');
myContentControl.cannotEdit = true;
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));
}
});
}
并且outPutText值可以是" [1]"女巫是通过其他功能返回的。
答案 0 :(得分:1)
在讨论之后,问题是使用了来自office.js的陈旧副本(下载样本时)。解决方案是始终从我们的CDN获取office.js。 (https://appsforoffice.microsoft.com/lib/1.1/hosted/office.js)