Office Js detachFromList() 在线Word问题
Office Js detachFromList() online Word issue
这是我的代码:
let paragraph = paragraphs.items[paragraphs.items.length - 1];
let p = paragraph.insertParagraph('', window.Word.InsertLocation.after);
if (paragraph.isListItem) {
p.detachFromList()
p.leftIndent = 0
}
它工作得很好,感谢 MS 人员观看 SO 问题的帮助。
但是,这适用于桌面版 Word。在线版 Word 在使用某些模板时不会结束项目符号列表,因此将新内容 (p
) 添加为列表的一部分。没有抛出错误。
我试过在几个地方使用 paragraph.insertBreak('line')
,但我不确定为了在不同平台上保持相同的用户体验最好做什么。
有什么方法可以使它在桌面版和在线版 Word 上一样工作?在 Chrome 中测试,使用模板 General Notes
测试项目符号列表。如果项目符号列表是由用户通过主菜单生成的,则在线工作正常,但 General Notes
不起作用。
我刚刚尝试了我在网上发给你的完全相同的代码,它也有效,所以你应该没问题...
在最后插入段落后尝试应用此方法。
Word.run(function (context) {
var listI = context.document.body.paragraphs.getLast().listItemOrNullObject;
context.load(listI);
return context.sync()
.then(function () {
if (listI.isNullObject) { // check out how i am validating if its null.
console.log("there is no list at the end")
}
else {
context.document.body.paragraphs.getLast().detachFromList();
context.document.body.paragraphs.getLast().leftIndent = 0;
return context.sync();
}
})
})
这是我的代码:
let paragraph = paragraphs.items[paragraphs.items.length - 1];
let p = paragraph.insertParagraph('', window.Word.InsertLocation.after);
if (paragraph.isListItem) {
p.detachFromList()
p.leftIndent = 0
}
它工作得很好,感谢 MS 人员观看 SO 问题的帮助。
但是,这适用于桌面版 Word。在线版 Word 在使用某些模板时不会结束项目符号列表,因此将新内容 (p
) 添加为列表的一部分。没有抛出错误。
我试过在几个地方使用 paragraph.insertBreak('line')
,但我不确定为了在不同平台上保持相同的用户体验最好做什么。
有什么方法可以使它在桌面版和在线版 Word 上一样工作?在 Chrome 中测试,使用模板 General Notes
测试项目符号列表。如果项目符号列表是由用户通过主菜单生成的,则在线工作正常,但 General Notes
不起作用。
我刚刚尝试了我在网上发给你的完全相同的代码,它也有效,所以你应该没问题...
在最后插入段落后尝试应用此方法。
Word.run(function (context) {
var listI = context.document.body.paragraphs.getLast().listItemOrNullObject;
context.load(listI);
return context.sync()
.then(function () {
if (listI.isNullObject) { // check out how i am validating if its null.
console.log("there is no list at the end")
}
else {
context.document.body.paragraphs.getLast().detachFromList();
context.document.body.paragraphs.getLast().leftIndent = 0;
return context.sync();
}
})
})