import axios from 'axios' export default class UploadAdapter { constructor(loader, url) { this.url = url this.loader = loader this.loader.file.then((pic) => (this.file = pic)) this.upload() } // Starts the upload process. upload() { const fd = new FormData() fd.append('image', this.file) // your image // ... return new Promise((resolve, reject) => { axios .post(this.url, fd, { onUploadProgress: (e) => { console.log( // show upload process Math.round((e.loaded / e.total) * 100) + ' %' ) }, }) .then((response) => { resolve(response) }) .catch((error) => { reject('Server Error') console.log('Server Error : ', error) }) }) } }