为组件开启事件监听,当组件发生指定事件时,系统执行相应的操作。
实现方式
在JS-SDK中,通过实例的on
方法监听事件。
instance.on('事件名', (data) => {
//do something...
});
事件列表
可用于监听的事件请参见下表。
事件名 | 描述 | 最低支持版本 |
---|---|---|
fileOpen | 文件打开成功或者失败时的事件回调。 | 1.0.0 |
error | 错误发生时的事件回调。 | 1.1.2 |
tabSwitch | PC头部Tab切换。 | 1.1.2 |
fileStatus | 文件保存状态,用于文件保存的事件回调。 | 1.1.5 |
previewLimit | 预览页数限制事件,用于滚动到限制页数底部时的事件回调。 此事件只在预览页数限制模式下有效,且只支持WORD、PDF以及PDF组件。 | 1.1.5 |
hasDocMap | 文档是否存在目录。 | 1.1.5 |
fullscreenChange | 进入或退出全屏事件。 | 1.1.5 |
fileNameChange | 文件名重命名的事件回调。 | 1.1.9 |
fileOpen
文件打开成功或者失败时的事件回调。
示例
//文件打开成功或者失败时的事件回调 instance.on('fileOpen', (data) => { console.log('文件打开:', data); });
当事件执行成功时,返回结果如下:
{ duration: 812, fileInfo: { createTime: 1606461829, id: "94749723688", modifyTime: 1606461829, name: "userName", officeType: "s", }, stageTime: 1614, success: true, time: 1614, ts: 1607858260164, }
当事件执行失败时,返回结果如下:
{ msg: "Fail", result: "Fail" }
error
错误发生时的事件回调。
例如将doc
文件改成xls
文件等操作,会引发报错。
示例
//错误发生时的事件回调 instance.on('error',(err)=>{ console.log('发生错误:',err); });
返回参数
{ reason:"Fail" }
tabSwitch
PC头部tab切换,用于tab切换时的事件回调。
示例
instance.on('tabSwitch', function(data) { //do something... })
返回参数
{ tabKey: 1 //当前tab的序号。 }
fileStatus
文件保存的事件回调。
示例
//文件保存的事件回调 jssdk.on('fileStatus', (data) => { console.log('文件保存:', data); });
返回参数
{ status: 0, //文件无更新 status: 1, //版本保存成功,触发场景:手动保存、定时保存、关闭网页 status: 2, //暂不支持保存空文件,触发场景:内核保存完后文件为空 status: 3, //空间已满 status: 4, //保存中请勿频繁操作,触发场景:服务端处理保存队列已满,正在排队 status: 5, //保存失败 status: 6, //文件更新保存中,触发场景:修改文件内容触发的保存 status: 7, //保存成功,触发场景:文件内容修改保存成功 }
hasDocMap
文档是否存在目录。
instance.on('hasDocMap', function() {
//文档存在目录时,则会执行回调。
})
fullscreenchange
进入或退出全屏事件,用于进入或退出全屏时的事件回调。
示例
instance.on('fullscreenchange', , function(result) { //do something... })
返回结果
{ status: 0, //退出全屏时触发。 status: 1, //进入全屏时触发。 }
fileNameChange
文件名重命名的事件回调。
示例
//文件名重命名的事件回调 jssdk.on('fileNameChange', (e) => { console.log('新的文件名为:', e.fileName); });
返回参数
当文件重命名(成功)后,会返回新文件名。
{ fileName: "NewWebOffice" }
错误码
错误码 | 说明 |
---|---|
Unknown | 未知错误。 |
userNotLogin | 用户未登录。 |
InvalidLink | 无效链接。 |
SessionFull | 协作成员已满。 |
Fail | 打开失败。 |
PermissionDenied | 您的操作权限不足。 |
GetTokenFailed | 获取token失败。 |
SessionExpired | 会话过期。 |
fileTooLarge | 文件过大,不支持预览服务。 |
GetFileInfoFailed | 获取文件信息失败。 |