Skip to content

配置总览

urlrefreshToken 等加载文档必须项之外,js-sdk 还可通过对初始化 config 选项进行配置,支持一些常用的定制化操作和文档基础能力,代码示例:

WebOfficeSDK.config({
  url: 'xxxxxx',
  refreshToken: () => {},
  mode: 'nomal',
  cooperUserAttribute: {
    isCooperUsersAvatarVisible: true, // 是否显示协作用户头像
    cooperUsersColor: [
      {
        userId: 'xxx', // 用户 id
        color: '#F65B90' // 用户光标颜色
      }
    ]
  },
  onToast: (
    msg, // 提示信息
    action // 提示动作
  ) => {},
  getClipboardData() {
    // TODO:自身业务处理
    return Promise.resolve({
      text: 'xxx', // text 格式数据
      html: 'xxx', // html 格式数据,目前仅表格支持
      updateExternal: true // 是否从外部粘贴数据,为 false 则从内部剪切板获取
    })
  },
  onHyperLinkOpen({ linkUrl }) {
    // TODO:自身业务处理
  },
  // commandBars 初始状态设置
  commandBars: [
    {
      cmbId: 'HeaderLeft', // 组件 ID
      attributes: {
        visible: false, // 隐藏组件
        enable: false, // 禁用组件,组件显示但不响应点击事件
      },
    },
  ]
  // 通用选项,所有类型文档适用
  commonOptions: {
    isShowTopArea: false, // 隐藏顶部区域(头部和工具栏)
    isShowHeader: false, // 隐藏头部区域
    isBrowserViewFullscreen: false, // 是否在浏览器区域全屏
    isIframeViewFullscreen: false, // 是否在 iframe 区域内全屏
    acceptVisualViewportResizeEvent: true // 控制 WebOffice 是否接受外部的 VisualViewport
  },
  wordOptions: {
    isShowDocMap: false, // 是否开启目录功能,默认开启
    isBestScale: false, // 打开文档时,默认以最佳比例显示
    isShowBottomStatusBar: false, // 是否展示底部状态栏
    mobile: {
      isOpenIntoEdit: false, // (Mobile)要有编辑权限,移动端打开时是否进入编辑
      isShowHoverToolbars: false, // (Mobile)是否显示文字底部工具栏
      isVoiceCommentEnabled: false, // (Mobile)是否允许插入语音评论
      showFontDownloadNotice: false // (Mobile)是否显示字体下载提示
    }
  },
  pptOptions: {
    isShowBottomStatusBar: false, // 是否展示底部状态栏
    isShowRemarkView: true, // 是否显示备注视图
    isShowInsertMedia: true, // 是否显示插入音视频入口
    isShowComment: true, // 是否显示评论相关入口
    mobile: {
      isOpenIntoEdit: false, // (Mobile)要有编辑权限,移动端打开时是否进入编辑
      showPrevTipWhilePlay: true, // (Mobile)播放时向上翻页,是否展示 “上一页” 的提示
      isShowReviewLogo: false // (Mobile)是否显示审阅左上 logo
    }
  },
  pdfOptions: {
    isShowComment: false, // 是否显示注解,默认显示
    isInSafeMode: false, // 是否处于安全模式(安全模式下不能划选文字,不能复制以及不能通过链接跳转),默认不是安全模式
    isBestScale: false, // 默认以最佳显示比例打开
    isShowBottomStatusBar: false, // 是否展示底部状态栏
    disBackScrollPos: true // 是否禁用滚动还原
  }
})

详细可配置项如下表

配置项类型说明支持组件
mode
string
显示模式
全组件
+
cooperUserAttribute
data {}
协作用户配置
全组件
onToast
function onToast(toast:{msg,action}):void
自定义 toast
全组件
onHyperLinkOpen
function onHyperLinkOpen(link:{linkUrl,action}):void
拦截原有外链跳转并获取 link 信息来做处理
全组件
getClipboardData
function getClipboardData():Promise<{text,html,updateExternal}>
移动端 APP 获取剪切板数据。目前仅支持移动端表格、文字,js-sdk 版本为 v1.1.6
表格、文字
commandBars
CommandBars []
commandBars 初始状态配置。详见组件状态设置
全组件
+
commonOptions
CommonOptions{}
组件通用选项
全组件
+
wordOptions
WordOptions{}
文字组件选项
文字
+
pptOptions
PPTOptions{}
演示组件选项
演示
+
pdfOptions
PDFOptions{}
PDF 组件选项
PDF