全部產品
Search
文件中心

Intelligent Media Management:事件

更新時間:Oct 30, 2024

為組件開啟事件監聽,當組件發生指定事件時,系統執行相應的操作。

實現方式

在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

擷取檔案資訊失敗。