tinyMCE自定义上传图片类型校验

tinyMCE自定义上传图片时,选择其他类型的文件无法触发images_upload_hanlder
需求需要对类型进行校验,比如选择.word .zip等格式时要提醒图片格式不对,发现选择其他类型的时候根本不会触发images_upload_hanlder,第一行的内容不会打印,bmp的图片格式也不能触发images_upload_hanlder,也不会上传成功,有人遇到过这种情况吗?

img

可能是因为 tinyMCE 的默认配置中只允许上传图片类型的文件,而不会触发 images_upload_handler。

tinymce.init({
  selector: 'textarea',
  // 其他配置项...

  // 配置上传图片处理
  images_upload_handler: function (blobInfo, success, failure) {
    // 获取文件信息
    const file = blobInfo.blob();

    // 校验文件类型
    const allowedTypes = ['image/jpeg', 'image/png', 'image/gif']; // 允许上传的图片类型
    const isImage = allowedTypes.includes(file.type);

    if (!isImage) {
      // 文件类型不正确,处理错误逻辑
      alert('请选择正确的图片文件类型');
      return;
    }

    // 处理正确的文件类型
    // 执行上传图片的操作,可以使用你自己的上传逻辑
    // 需要注意的是,success() 方法用于上传成功后的回调,传入的参数为图片的 URL
    success('https://example.com/image.jpg');
  },
});