【vue】 Tinymce 富文本编辑器 不想让上传的图片转换成base64,而是链接

news2024/11/26 2:47:47

前言:最近项目上需要使用富文本编辑器,觉得tinymce很不错就用了,具体怎么在项目中使用参考
【vue】 vue2 中使用 Tinymce 富文本编辑器
【vue】 Tinymce 数据 回显问题 | 第一次正常回显后面,显示空白bug不能编辑

这两天又遇到了新的问题,图片上传后是看地址栏发现是base64的,就是下面这样的,
在这里插入图片描述
总体来说呢,这样也没有问题,毕竟图片显示了。但是多个图片上传就会导致响应体太大(后端响应太慢,优化时发现是base64图片太大),所以就想要直接放个链接回显,下面这样

在这里插入图片描述
如何实现?找了很多文章,参考了很长时间终于弄好了,总结一下。
简介与入门 \ 上传图片和文件
vue—tinymce粘贴图片【完美解决】
插件 \ paste 粘贴插件
gitee-wpspaster
tinymce 实现 粘贴图片自动上传

下面具体操作:

我就基于我之前使用tinymce基础上修改了,

第一步:配置粘贴【paste】具体配置项

tinymce.init({
  selector: '#tinydemo',
  plugins: 'paste',
  toolbar: 'paste',
  paste_data_images: true // 默认是false的,记得要改为true才能粘贴
})

第二步:配置图片上传函数

images_upload_handler: (blobInfo, success, failure) => {
  var xhr, formData;
  var file = blobInfo.blob(); //转化为易于理解的file对象
  xhr = new XMLHttpRequest();
  xhr.withCredentials = false;
  // 图片上传路由
  xhr.open("POST", process.env.VUE_APP_BASE_API + "/common/upload");
  xhr.onload = () => {
    var json;
    if (xhr.status != 200) {
      // failure("上传失败: " + xhr.status);
      return;
    }
    json = JSON.parse(xhr.responseText);
    // json是后端返回的数据,其中就包含链接
    if (!json || typeof json.location != "string") {
      // failFun("上传成功:");
      // succFun(json.url);
      success(process.env.VUE_APP_BASE_API + json.fileName);
      return;
    }
  };
  formData = new FormData();
  formData.append("file", file, file.name); //此处与源文档不一样
  xhr.setRequestHeader("Authorization", "Bearer " + getToken());
  xhr.send(formData);
},

下面这段代码是完成系统验证的,可以根据项目调整,不需要可以不加
xhr.setRequestHeader("Authorization", "Bearer " + getToken());

至此,图片渲染就是链接形式了。

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

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

相关文章

早在植物到达之前,泥土就可能形成蜿蜒的河流

在这张卫星视图中可以看到加利福尼亚州死亡谷国家公园恶水盆地的蜿蜒河道。在世界各地的贫瘠环境中都可以找到类似的单线通道,这些环境主要由细粒沉积物组成,几乎没有植被。 图片来源:Google 地球,2023 年 资料来源:地…

奔驰CAN FD嵌入式控制器开发硬件设计及应用趋势

CAN FD作为一种性能可靠、功能完善、成本合理的远程网络通信控制方式,集成CAN/CAN FD控制器的MCU、核心板、工控板及物联网解决方案已经被广泛应用到各个控制系统中,例如汽车电子、自动控制、智能大厦、电力系统、能源物流、智慧改装等各个领域。 中国经…

【ARM Coresight 系列文章 2.4 - Coresight 寄存器:DEVARCH,DEVID, DEVTYPE】

文章目录 1.1 DEVARCH(device architecture register)1.2 DEVID(Device configuration Register)1.3 DEVTYPE(Device Type Identifier Register) 1.1 DEVARCH(device architecture register) DEVARCH 寄存器标识了coresight 组件的架构信息。 bits[31:21] 定义了组件架构&…

深度学习(32)——CycleGAN

深度学习(32)——CycleGAN 文章目录 深度学习(32)——CycleGAN1. GAN原理2. CycleGAN(1)原理(2)核心思想(3)优点(4)缺点(5…

【蓝牙通信】两个Hc-05之间的通信(教程)

目录 1、准备两个蓝牙模块,一个主机,一个从机 2、进入AT状态 3、蓝牙状态指示灯 4、具体步骤 1、准备两个蓝牙模块,一个主机,一个从机 2、进入AT状态 进入AT状态有2种方法: 1.先按住按键不放,再给模块…

IDEA SpringBoot项目引入外部jar并打包

1、首先,我们再pom.xml中导入依赖包时,打包可以正常进行。 但如果我们引入了第三方的外部jar包(这里需要先把jar包添加到该项目依赖库中,这里不做演示),如图 2、导致打包时报错,程序包不存在或…

识别动物的软件,动物园碰到不认识的动物就用它

动物是人类的好朋友,我们常常会在动物园、公园等地方看到各种各样的动物。但是有时我们会遇到一些不认识的动物,这时我们应该怎么办呢?下面将介绍一些识别动物的方法以及遇到不认识动物的应对方法。 识别动物的方法 要想识别一个动物&#x…

【长链剖分】icpc 2022西安 L

Problem - L - Codeforces 题意&#xff1a; 思路&#xff1a; Code&#xff1a; #include <bits/stdc.h>#define int long longusing namespace std;const int mxn1e610; const int mxe1e610;vector<int> G[mxn],lp;int N,Fa; int son[mxn],len[mxn];void dfs1(…

Apriori关联规则挖掘

在某个商场&#xff0c;销售经理希望通过重新布置商品的摆放情况来提高销售额&#xff0c;那么该如何摆放既有利于方便顾客购买&#xff0c;也刺激顾客的购买欲呢&#xff1f;商品的摆放并不是随意的&#xff0c;首先是将同类商品放在一起外&#xff1b;其次&#xff0c;可以考…

shell脚本练习--安全封堵脚本,使用firewalld实现

一.什么是安全封堵 安全封堵&#xff08;security hardening&#xff09;是指采取一系列措施来增强系统的安全性&#xff0c;防止潜在的攻击和漏洞利用。以下是一些常见的安全封堵措施&#xff1a; 更新和修补系统&#xff1a;定期更新操作系统和软件包以获取最新的安全补丁和修…

OpenFrp

https://www.openfrp.net/ 建议实名认证 创建隧道 选择左边的节点&#xff0c;因为ssh是tcp应用&#xff0c;所以选择有tcp的节点 隧道名字随便 本地端口&#xff0c;因为我要用ssh&#xff0c;所以选22 远程端口可以选择下面的随机远程端口 提交 打开linux服务器 sudo ap…

管理类联考——写作——论说文——实战篇——行文篇——通用性强,解释多种现象的经典理论——谈好处

一个标题&#xff0c;三句开头&#xff0c;四层结构&#xff0c;两句结尾 谈好处 马斯洛需求层次理论 理论介绍 马斯洛需求层次理论是由美国著名社会心理学家马斯洛提出的关于需要结构的理论。该理论认为&#xff0c;人们需要动力实现某些需要&#xff0c;有些需求优先于其…

三、Spring源码-实例化

Spring源码-Bean的实例化 接下来我们看看Bean的实例化处理 一、BeanDefinition 首先我们来看看BeanDefinition的存放位置。因为Bean对象的实例化肯定是BeanFactory基于对应的BeanDefinition的定义来实现的&#xff0c;所以在这个过程中BeanDefinition是非常重要的&#xff0c;…

QGraphicsView基本初识别

拖拽如下控件&#xff1a; 然后实现效果&#xff1a; 圆形和矩形都可以移动&#xff0c;矩形、圆形就是图元&#xff0c;而图元放在我们创建的场景中&#xff0c;场景又透过多个视图来看到&#xff0c;其实可以理解成很多人偷窥你在吃饭的这个场景&#xff0c;饭和你这些角色…

使用UltraISO制作麒麟v10系统盘

大家好&#xff0c;我是早九晚十二&#xff0c;目前是做运维相关的工作。写博客是为了积累&#xff0c;希望大家一起进步&#xff01; 我的主页&#xff1a;早九晚十二 文章目录 1 背景2 准备工作2.1 镜像准备2.2 制作工具2.3 启动U盘 3 制作步骤3.1 找到ISO文件&#xff0c;右…

ThingsKit物联网平台可视化之用户权限说明

角色设计 角色设计是软件设计中的一个重要环节&#xff0c;它决定了用户在软件系统中的使用体验和交互方式。在本系统中包含四类角色&#xff0c;分别是&#xff1a;超级管理员、平台管理员、租户、客户。以下是对应角色的关系及相关说明。 角色关系 角色说明 角色名称描述超…

css实现水平居中

代码示例 <div class"box"><div class"box1"></div> </div>1.弹性布局&#xff1a;&#xff08;推荐&#xff09; display:flex&#xff1b; 这些要添加在父级的&#xff0c;是父级的属性 //父级添加display:flex; //父级添加jus…

Django Rest_Framework(一)

1. Web应用模式 在开发Web应用中&#xff0c;有两种应用模式&#xff1a; 前后端不分离[客户端看到的内容和所有界面效果都是由服务端提供出来的。] 前后端分离【把前端的界面效果(html&#xff0c;css&#xff0c;js分离到另一个服务端或另一个目录下&#xff0c;python服务…

英语翻译日语翻译待遇哪个好

如今&#xff0c;随着世界联系越来越紧密&#xff0c;市场上对于翻译业务的需求也越来越大。那么&#xff0c;针对比较热门的英语翻译与日语翻译&#xff0c;哪个语言翻译待遇好&#xff1f; 我们知道&#xff0c;英语作为全球使用频率最高的语言&#xff0c;业务量大市场需求大…

Selenium 无头浏览器被知乎限制访问的解决方案

问题出现 我尝试使用如下代码爬取知乎的有关内容&#xff0c;出现知乎安全验证界面&#xff1a; def init_driver():options Options()options.add_argument("--headless")options.add_argument(--disable-gpu)driver webdriver.Chrome(optionsoptions)return dr…