Skip to content

zjxpcyc/quill-plugin-image

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

quill-plugin-image

Change quill default actions when insert images.

Quill 是很不错的富文本编辑器。

自带的图片插入功能默认是自动插入 Base64 图片字串,这个 plugin 或者叫拓展修改了这种默认行为,而是将插入的行为 通过 Promise 暴露出来, 自己主导上传行为。

如果,这个扩展的功能对您来说太少,可以去试试 NextBoy/quill-image-extend-module

Install 安装

npm install quill-plugin-image --save

Useage 使用

// es6 引入
import uploadImage from 'quill-plugin-image';

// var quill = new Quill();

// param: quill - the quill instance
// param: function -  file => Promise
uploadImage(quill, ((file) => {
  // 菊花转
  // loadding.start();

  // 1. 直接转 base64
  return new Promise((resolve, reject) => {
    const reader = new FileReader();
    reader.onload = (e) => {
        base64String = e.target.result;

        
        // loadding.stop();

        // or resolve({ src: base64String, alt: file.name });
        resolve(base64String);
    };
    reader.readAsDataURL(file);
  });

  // 2. ajax 或者 fetch 远程上传
  return new Promise((resolve, reject) => {
    const formData = new FormData();
    formData.append('any-name', file);

    fetch(
      'http://somedomain/path/to/your/upload/api',
      {
        body: formData,
        method: 'POST',
      }
    ).then(data => {
      // loadding.stop();

      // resolve 可以是 string 图片地址
      // 也可以是对象, 属性值是同 html img 元素一致
      resolve({ src: data.url, alt: data.alt || file.name });
    });
  });

  // 3. 获取其他的控制
  // 比如 jquery/zepto 上传, 进度条显示等
  // TODO:
}));

About

Change quill default actions when insert images.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published