nhn / toast-ui.vue-image-editor

Toast UI Image Editor for Vue

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

method "loadImageFromURL" not callback

PandexLee opened this issue · comments

Current Behavior

Loading image error, but not callback reject

//  my code
    this.$refs.tuiImageEditor.invoke('loadImageFromURL', this.img, 'checker_image').then((result, error) => {
      this.$emit('cancel_loading')
      console.log('loadImageFromURL',result,error)
    }).catch((e) => {
      console.log('load iamge error',e)      // not call
      this.$emit('cancel_loading')
    });

In tui-image-editor.js

{
	        key: '_setBackgroundImage',
	        value: function _setBackgroundImage(img) {
	            var _this3 = this;

	            if (!img) {
	                return _promise2.default.reject(rejectMessages.loadImage);
	            }

	            return new _promise2.default(function (resolve, reject) {
	                var canvas = _this3.getCanvas();

	                canvas.setBackgroundImage(img, function () {
	                    var oImage = canvas.backgroundImage;

	                    if (oImage.getElement()) {     // when the oImage is null, it won't go down, no resolve and reject
	                        resolve(oImage);
	                    } else {
	                        reject(rejectMessages.loadingImageFailed);
	                    }
	                }, imageOption);
	            });
	        }

Expected Behavior

Add condition in _setBackgroundImage

{
	        key: '_setBackgroundImage',
	        value: function _setBackgroundImage(img) {
	            var _this3 = this;

	            if (!img) {
	                return _promise2.default.reject(rejectMessages.loadImage);
	            }

	            return new _promise2.default(function (resolve, reject) {
	                var canvas = _this3.getCanvas();

	                canvas.setBackgroundImage(img, function () {
	                    var oImage = canvas.backgroundImage;

	                    if (oImage && oImage.getElement()) {     //  add variable condition
	                        resolve(oImage);
	                    } else {
	                        reject(rejectMessages.loadingImageFailed);
	                    }
	                }, imageOption);
	            });
	        }