onlyoffice实现在单页面加载文档的功能

news2024/10/7 14:24:19

草图

在这里插入图片描述

实现案例的基本原型

这里我们的样式库使用的是Tailwindcss,我们的前端UI组件库使用的是Ant Design Vue。

基本原型是,有个按钮,没有点击按钮的时候,页面显示的时普通的内容。当点击这个按钮的时候,页面加载文档并渲染到普通内容原本的位置进行替换。

下面的代码进行了基本的实现,但是遗留了一个问题,就是没有动态的加载文档。

怎么动态的加载文档呢?

<script setup>
import {message} from "ant-design-vue";
import {ref} from "vue";

const isDocument = ref(false)
const onLoadDocumentClick = () => {
  message.success("load document")
  isDocument.value = true
}
</script>
<template>
  <div class="bg-indigo-50 p-8 min-h-screen">
    <div class="bg-amber-200 p-8">
      <a-button type="primary" @click="onLoadDocumentClick">Load Document</a-button>
    </div>
    <div class="bg-amber-400 p-8 min-h-96">
      <template v-if="!isDocument">content</template>
      <template v-else>
        document content
      </template>
    </div>
  </div>
</template>

如何渲染文档?

首先,有三个非常重要的URL:

  • 文档服务器地址:documentServerUrl="http://192.168.234.138:8080"
  • 文档地址:url: "http://192.168.234.138:18889/test.docx"
  • 回调地址:callbackUrl: "http://192.168.234.138:18889/doc/callback"

组件:

<DocumentEditor
      id="docEditor"
      documentServerUrl="http://192.168.234.138:8080"
      :config="config"
      :events_onDocumentReady="onDocumentReady"
      :onLoadComponentError="onLoadComponentError"
  />

组件配置:

const config = {
  document: {
    fileType: "docx",
    key: "Khirz6zTPdfd7",
    title: "Example Document Title.docx",
    url: "http://192.168.234.138:18889/test.docx"
  },
  documentType: "word",
  editorConfig: {
    callbackUrl: "http://192.168.234.138:18889/doc/callback",
    lang: 'zh-CN', // 设置语言 en / zh-CN
  },
  height: '700px',
  width: '100%'
}

最终代码

<script setup>
import {message} from "ant-design-vue";
import {ref} from "vue";
import {DocumentEditor} from "@onlyoffice/document-editor-vue";

const isDocument = ref(false)
const onLoadDocumentClick = () => {
  message.success("load document")
  isDocument.value = true
}
const config = {
  document: {
    fileType: "docx",
    key: "Khirz6zTPdfd7",
    title: "Example Document Title.docx",
    url: "http://192.168.234.138:18889/test.docx"
  },
  documentType: "word",
  editorConfig: {
    callbackUrl: "http://192.168.234.138:18889/doc/callback",
    lang: 'zh-CN', // 设置语言 en / zh-CN
  },
  height: '700px',
  width: '100%'
}
</script>
<template>
  <div class="bg-indigo-50 p-8 min-h-screen">
    <div class="bg-amber-200 p-8">
      <a-button type="primary" @click="onLoadDocumentClick">Load Document</a-button>
    </div>
    <div class="bg-amber-400 p-8 min-h-96">
      <template v-if="!isDocument">content</template>
      <template v-else>
        <DocumentEditor
            id="xxx"
            documentServerUrl="http://192.168.234.138:8080"
            :config="config"
        />
      </template>
    </div>
  </div>
</template>

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1866094.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

STM32启动流程 和 map文件的作用

一&#xff0c;启动流程 1. 复位/上电 2. 根据 BOOT0/BOOT1 确定程序从哪个存储位置执行 3. 初始化 SP 及 PC 指针 将 0X08000000 位置的栈顶地址存放在 SP 指针中 将 0x08000004 位置存放的向量地址装入 PC 程序计数器 4. 初始化系统时钟 5. 初始化用户堆栈 6. 进入main函数 二…

python的一些常用的内建函数

内建函数 python中的内建函数是可以被自动加载的&#xff0c;可以随时调用这些函数&#xff0c;不 需要定义。方便的编程。 eval()函数 将字符串当成有效的表达式来求值&#xff0c;并返回计算结果 用于对动态表达式求值&#xff0c;语法格式如下&#xff1a; eval(source&…

跨境独立站推广策略:有哪些方法与工具?

在出海独立站商家中&#xff0c;推广是必不可少的环节。在你完成网站的搭建&#xff0c;产品的上架&#xff0c;以及网站的运营和优化后&#xff0c;你就可以开始着手推广你的网站了。你的网站是承载你的品牌和产品的主要平台&#xff0c;因此&#xff0c;你需要根据你的品牌和…

零成本搭建个人图床服务器

前言 图床服务器是一种用于存储和管理图片的服务器&#xff0c;可以给我们提供将图片上传后能外部访问浏览的服务。这样我们在写文章时插入的说明图片&#xff0c;就可以集中放到图床里&#xff0c;既方便多平台文章发布&#xff0c;又能统一管理和备份。 当然下面通过在 Git…

浅谈网络通信(4)

文章目录 一、应用层常见协议——HTTP[!]1.1 HTTP报文格式1.1.1、HTTP协议中的方法[!]1.1.2、请求1.1.2.1、构造 GET 请求的几种方式1.1.2.2、构造 POST 请求的几种方式1.1.2.3、请求头(header)1.1.2.4、Content-Type常见取值 1.1.3、响应1.1.3.1、HTTP响应详解 1.1.4、HTTP协议…

加速人工智能“拔节生长”,为发展注入“智慧”动能

人工智能是新一轮科技革命和产业变革的重要驱动力量&#xff0c;将对全球经济社会发展和人类文明进步产生深远影响。6月20日&#xff0c;以“智行天下 能动未来”为主题的2024世界智能产业博览会在天津开幕&#xff0c;全方位展示了人工智能、智能网联汽车、智能制造等多领域的…

文档格式批量转换-LibreOffice安装及使用(Windows)

一、LibreOffice的下载 下载网址&#xff1a; 主页 | LibreOffice 简体中文官方网站 - 自由免费的办公套件 点击Windows版本下载 安装下载的文件 安装类型选择自定义&#xff0c;下一步修改软件安装的位置&#xff0c;为了不占用C盘空间&#xff0c;我安装在了D盘。 文件类…

【华为OD机试|01】最远足迹(Java/C/Py/JS)

目录 一、题目介绍 1.1 题目描述 1.2 备注&#xff1a; 1.3 输入描述 1.4 输出描述 1.5 用例 二、Java代码实现 2.1 实现思路 2.2 详细代码 2.3 代码讲解&#xff1a; 三、C语言实现 3.1实现步骤 3.2 实现代码 3.3 代码详解 四、Python实现 4.1 实现步骤 4.2 …

MySQL之可扩展性(四)

可扩展性 向外扩展 分片?还是不分片&#xff1f; 这是一个问题&#xff0c;对吧&#xff1f;答案很简单:如非必要&#xff0c;尽量不分片。首先看是否能通过性能调优或者更好的应用或数据库设计来推迟分片。如果能足够长时间地推迟分片&#xff0c;也许可以直接购买更大地服…

Linux系统启动流程

init程序类型&#xff1a; ①、SysV&#xff1a;init&#xff0c;centos 5之前&#xff0c;配置文件/etc/init.d/ ②、Upstart: init&#xff0c;centos 6&#xff0c;配置文件/etc/init.d/ /etc/init/ ③、Systemd:Systemd&#xff0c;centos 7&#xff0c;配置文件/usr/li…

JavaScript的学习之自增自减

目录 一、自增 第一种&#xff1a;a 第二种&#xff1a;a 二、自减 一、自增 定义&#xff1a;可以是变量在自身的基础上增加1 自增分为两种&#xff1a;后&#xff08;a&#xff09;和前&#xff08;a&#xff09; 无论是a和a都会立即使原变量的值增1&#xff0c;不同的使…

windows10 无法识别双频合一的5Gwifi

windows10 无法识别双频合一的5Gwifi 在网络配置中指定 wireless mode 为802.11a 或802.11ac 这两个是 5G网络的协议&#xff0c;如果不存在则说明无线网卡不支持5G网络

1米全国土地覆盖数据如何切片

我们在《136G全国1m土地覆盖数据》一文中&#xff0c;为你分享了136G全国1米土地数据。 现在&#xff0c;再为你分享如何将该数据进行切片&#xff0c;并在水经微图&#xff08;简称“微图”&#xff09;中加载的方法。 数据加载 打开微图&#xff0c;点击左上角的图层&…

打印一张A4纸多少钱?打印a4多少钱一张

在数字化日益发展的今天&#xff0c;打印服务依然是办公、学习和生活中不可或缺的一部分。对于广大用户来说&#xff0c;了解A4纸打印的价格成为选择打印服务的重要参考因素。那么&#xff0c;A4纸打印到底多少钱一张呢&#xff1f; 在琢贝云打印平台&#xff0c;打印价格非常实…

固定翼无人机入门(二)

这里讲讲无人机的路径跟踪控制相关知识&#xff0c;路径跟踪需要制导率&#xff08;平面&#xff09;和控制器&#xff0c;在无人机中较为常用的是L1制导率&#xff0c;不过L1制导率是控制无人机在二维平面上的转向&#xff0c;此处还引入总能量控制&#xff0c;控制无人机的高…

onlyoffice官方文档中打开文件示例的相关测试

文档地址&#xff1a;https://api.onlyoffice.com/zh/editors/open 开发环境&#xff1a; 后端&#xff1a;zdppy_api开发的一个文档服务前端&#xff1a;vue3开发的客户端 我们在index.html中&#xff0c;引入了文档服务的js文件&#xff1a; <!doctype html> <h…

海外代理IP哪个可靠?如何测试代理的稳定性?

在数字化时代&#xff0c;互联网已成为我们日常生活的重要组成部分。然而&#xff0c;随着网络活动的增加&#xff0c;我们面临的安全威胁也随之增加。 黑客攻击、数据泄露、网络钓鱼等安全事件频发&#xff0c;严重威胁着我们的个人隐私和网络安全。代理服务器在当今的互联网世…

ansible自动化运维,(2)ansible-playbook

三种常见的数据格式&#xff1a; XML&#xff1a;可扩展标记语言&#xff0c;用于数据交换和配置 JSON&#xff1a;对象标记法&#xff0c;主要用来数据交换或配置&#xff0c;不支持注释 YAML&#xff1a;不是一种标记语言&#xff0c;主要用来配置&#xff0c;大小写敏感&…

3.任务的创建与删除

1.什么是任务&#xff1f; 任务可以理解为进程/线程&#xff0c;创建一个任务&#xff0c;就会在内存开辟一个空间。 任务通常都含有while(1)死循环 2.任务创建与删除相关的函数 3.CUBEMAX相关配置 编辑一个led1闪烁的任务

Python学习打卡:day16

day16 笔记来源于&#xff1a;黑马程序员python教程&#xff0c;8天python从入门到精通&#xff0c;学python看这套就够了 目录 day16116、SQL 基础和 DDLSQL的概述SQL语言的分类SQL的语法特征DDL — 库管理DDL — 表管理 117、SQL — DMLDML概述数据插入 INSERT数据删除 DEL…