场景
vue3+ts+vite
只做记录使用------各位根据实际截取.
使用微前端的时候上传图片无法定位到准确的位置,所以使用自定义的方式手动插入图片
思路:
1. 自定义上传图片的接口
2. 上传成功,拿到图片地址
3. 获取选区光标位置,将图片插入其中
4. 将光标位置调整到最后
代码片段
const handleUpload = async e => {
let quill = toRaw(quillEditor.value).getQuill()
const files = Array.prototype.slice.call(e.target.files)
var formData = new FormData() // new一个formData事件
formData.append('files', files[0]) // 将file属性添加到formData里
let res = await uploadFiles(formData)
let length = quill.getSelection().index
// 插入图片,res为服务器返回的图片链接地址
quill.insertEmbed(length, 'image', res.data[0].url)
// 调整光标到最后
quill.setSelection(length + 1)
}