如何监听侧边栏中不同面板的扩展或收缩事件?

1. 获取相关组件的名称

您可以在浏览器中右键点击该组件,选择 “审查”;然后在对应的 <a>标签中找到 component-name 属性的值。对于容器组件,比如target: ‘hometab-group-hand’,您可以在浏览器中右键点击其中一个子组件,选择 “审查”;然后在相关的<div>标签中找到 component-name 属性的值。

侧边栏相关的组件名称汇总如下:

组件名称描述
sidebar整体侧边栏的外层容器
sidebar-bookmark-v2书签面板
sidebar-thumbnail-panel页面缩略图面板
comment-list-sidebar-panel注释列表面板
sidebar-layers图层面板
sidebar-attachmentPDF附件面板
sidebar-field表单域面板

2. 获取相关组件对象,并在其回调函数中进行事件监听

  • 如果只想要监听整体侧边栏的扩展或收缩事件,只需拿到sidebar组件对象,通过其提供的expand 和collapse事件回调即可满足业务功能的插入。示例代码如下:
pdfui.getComponentByName("sidebar").then(com => {
    com.on('expand', () => {
        console.log("sidebar激活,侧边栏扩展。")
    })
    com.on('collapse', () => {
        console.log("sidebar停用,侧边栏收缩。")
    })
});
  • 如果需要对侧边栏中的具体某个或某几个面板的扩展/收缩事件进行监听,则需拿到对应的组件对象,然后再通过其提供的expand 和collapse事件回调即可满足业务功能的插入。示例代码如下:
pdfui.getComponentByName("sidebar-bookmark-v2").then(com => {
    com.on('active', () => {
        console.log("书签列表panel激活,侧边栏扩展。")
    })
    com.on('deactive', () => {
        console.log("书签列表panel停用,侧边栏收缩。")
    })
});
pdfui.getComponentByName("sidebar-thumbnail-panel").then(com => {
    com.on('active', () => {
        console.log("页面缩略图panel激活,侧边栏扩展。")
    })
    com.on('deactive', () => {
        console.log("页面缩略图panel停用,侧边栏收缩。")
    })
});
pdfui.getComponentByName("comment-list-sidebar-panel").then(com => {
    com.on('active', () => {
        console.log("注释列表panel激活,侧边栏扩展。")
    })
    com.on('deactive', () => {
        console.log("注释列表panel停用,侧边栏收缩。")
    })
});
pdfui.getComponentByName("sidebar-layers").then(com => {
    com.on('active', () => {
        console.log("图层panel激活,侧边栏扩展。")
    })
    com.on('deactive', () => {
        console.log("图层panel停用,侧边栏收缩。")
    })
});
pdfui.getComponentByName("sidebar-attachment").then(com => {
    com.on('active', () => {
        console.log("附件panel激活,侧边栏扩展。")
    })
    com.on('deactive', () => {
        console.log("附件panel停用,侧边栏收缩。")
    })
});
pdfui.getComponentByName("sidebar-field").then(com => {
    com.on('active', () => {
        console.log("表单列表panel激活,侧边栏扩展。")
    })
    com.on('deactive', () => {
        console.log("表单列表panel停用,侧边栏收缩。")
    })
});
pdfui.getComponentByName('diy-sidebar-panel').then(com => {
    com.on('active', () => {
            console.log("自定义侧边栏panel激活,侧边栏扩展。")
        })
        com.on('deactive', () => {
            console.log("自定义侧边栏panel停用,侧边栏收缩。")
        })
})
 更多内容可查阅开发者手册中:“组件”-“基础组件”-“Sidebar组件”章节的内容。