首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Office识别ListItems的问题

Office识别ListItems的问题
EN

Stack Overflow用户
提问于 2017-06-27 12:59:00
回答 2查看 154关注 0票数 1

我试图在文档末尾添加一个段落,并避免在列表中添加新添加的段落的可能性(如果文档以列表结尾)。

我有以下代码:

代码语言:javascript
复制
let paragraph = paragraphs.items[paragraphs.items.length - 1]
let p = paragraph.insertParagraph('', window.Word.InsertLocation.after)

if (paragraph.listItemOrNullObject) {
    p.detachFromList()
    p.leftIndent = 0
}

发生以下情况:如果存在ListItem,则代码可以工作。如果没有,它就会在If条件内中断,就像我编写的paragraph.listItem一样。

这个不应该这样用吗?

编辑-引发的错误:

代码语言:javascript
复制
name:"OfficeExtension.Error"
code:"GeneralException"
message:"GeneralException"
traceMessages:[] 0 items
innerError:null
▶debugInfo:{} 4 keys
    code:"GeneralException"
    message:"GeneralException"
    toString:function (){return JSON.stringify(this)}
    errorLocation:"Paragraph.detachFromList"
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-27 14:39:02

如果listItemOrNullObject不是ListItem,它将返回一个空对象。从概念上讲,if是在问“这是一个列表项还是它不是一个列表项”,这实际上也将返回true。

它在这里失败了,你试图从一个不存在的列表中分离出来。我想看看isListItem。这将具体告诉您,如果段落是一个ListItem,那么您只执行p.detachFromList(),而实际上它是列表的一部分。

票数 1
EN

Stack Overflow用户

发布于 2017-06-28 10:06:57

这里的问题是,*.isNullObject方法/属性不返回常规的js 'null‘对象,而是返回NullObject (一个特殊的框架类型为null)。

看看这段代码,我以更有效的方式重写了它。打扰一下,你可以把它移植到ts。

希望这能有所帮助。

代码语言:javascript
复制
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();
                }

            })
    })

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44780924

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档