事件监听

更新时间:2023-09-25 06:55:36

为组件开启事件监听,当组件发生指定事件时,系统执行相应的操作。

重要

此文档已不再维护,建议您使用新版智能媒体管理。

实现方法

通过实例的on方法监听事件。

demo.on('事件名', function(data) {
    // do something...
})

事件列表

参数说明请参见下表。

事件名

说明

最低支持版本

事件名

说明

最低支持版本

fileOpen

文档打开,用于文档打开成功或者失败时的事件回调。

1.0.0

error

错误事件,用于错误发生时的事件回调。

1.1.2

tabSwitch

PC头部tab切换,用于tab切换时的事件回调。

1.1.2

fileStatus

文件保存状态,用于文件保存时的事件回调。

1.1.5

previewLimit

预览页数限制事件,用于滚动到限制页数底部时的事件回调。

此事件只在预览页数限制模式下有效,且只支持WORD、PDF以及PDF组件。

1.1.5

hasDocMap

文档是否存在目录,用于文档存在目录时的事件回调。

此事件只支持文字组件。

由于文字获取目录是动态分片获取,因此需要以监听事件方式确定是否存在目录。

1.1.5

fullscreenchange

进入或退出全屏事件,用于进入或退出全屏时的事件回调。

1.1.5

示例

  • 文件打开

    • 示例

      demo.on('fileOpen', function(data) {
          // do something...
      })
    • 当事件执行成功时,返回结果如下:

      {
          "success": true,
          "time": 111, // 打开时长。
          "fileInfo": {
            name: "座位表",
            officeType: "w",
            id: "64784347535"
          }
      }
    • 当事件执行失败时,返回结果如下:

      {
          "success": true,
          "time": 111,
          "reason": "InvalidLink", //错误时会有错误码。
      }
  • 错误事件

    • 示例

      demo.on('error', function(data) {
          // do something...
      })
    • 返回结果

      ```javascript
      {
          "reason": "InvalidLink", //错误时会有错误码。
      }

      更多错误码说明请参见错误码

  • PC头部tab切换

    • 示例

      demo.on('tabSwitch', function(data) {
          // do something...
      })
    • 返回结果

      {
        tabKey: 1 //当前tab的序号。
      }
  • 文件保存状态

    • 示例

      demo.on('fileStatus', function() {
          // do something...
      })
    • 返回结果

      {
        status: 0, //文档无更新。
        status: 1, //版本保存成功。当手动保存、定时保存、关闭网页时触发。 
        status: 2, //暂不支持保存空文件。当内核保存完后文件为空时触发。
        status: 3, //空间已满。
        status: 4, //保存中请勿频繁操作。当服务端处理保存队列已满,正在排队时触发。
        status: 5, //保存失败。
        status: 6, //文件更新保存中。当修改文档内容触发的保存时触发。
        status: 7, //保存成功。当文档内容修改保存成功时触发。
      }
  • 预览页数限制事件

    • 示例

      demo.on('previewLimit', function(result) {
          // do something...
      })
    • 返回结果

      说明

      由于文字文档为流式排版,无法获取准确的真实页数,因此返回结果中只有一个total参数。

      //文字文档。
      {
          total: 4 //限制页数。
      }
      //PDF和演示文档。
      {
          total: 4 //限制页数。
          realTotal: 10 //真实总页数。
      }
  • 文档是否存在目录

    示例如下:

    demo.on('hasDocMap', function() {
        //文档存在目录时,则会执行回调。
    }) 
  • 进入或退出全屏事件

    • 示例

      demo.on('fullscreenchange', , function(result) {
          // do something...
      })
    • 返回结果

      {
        status: 0, //退出全屏时触发。
        status: 1, //进入全屏时触发。
      }

错误码

错误码

说明

错误码

说明

Unknown

未知错误。

userNotLogin

用户未登录。

InvalidLink

无效链接。

SessionFull

协作成员已满。

Fail

打开失败。

PermissionDenied

您的操作权限不足。

GetTokenFailed

获取Token失败。

SessionExpired

会话过期。

fileTooLarge

文件过大,不支持预览服务。

GetFileInfoFailed

获取文件信息失败。

  • 本页导读 (1)
  • 实现方法
  • 事件列表
  • 示例
  • 错误码