Javascript 如果与插件协作,为什么无法在vue组件中调用方法?

Javascript 如果与插件协作,为什么无法在vue组件中调用方法?,javascript,vue.js,vuejs2,vue-component,Javascript,Vue.js,Vuejs2,Vue Component,我从这里获得固定方向图像的参考: 我在vue组件中尝试如下: <template> <div> ... </div> </template> <script> export default { ... methods: { ... changeImage(item, $event) {

我从这里获得固定方向图像的参考:

我在vue组件中尝试如下:

<template>
    <div>
        ...
    </div>
</template>
<script>
    export default {
        ...
        methods: {
            ...
            changeImage(item, $event) {
                ...
                loadImage(
                    $event.target.files[0],
                    function (img) {
                        img.toBlob(
                            function (blob) {
                                // create a form
                                const form = new FormData();
                                form.append('file', blob, $event.target.files[0].name);
                                // define the done handler
                                const onDone = (response) => {
                                    if (!$.trim(response)) {   
                                        alert('No response');
                                    }
                                    else {   
                                        const files = $event.target.files || $event.dataTransfer.files
                                        if (!files.length)
                                            return;
                                        this.createImage(item, response)
                                        ...
                                    }

                                }
                                // define th post options
                                const options = {
                                    url: window.Laravel.baseUrl+'/product/addImageTemp',
                                    type: "POST",
                                    data: form,
                                    enctype: 'multipart/form-data',
                                    processData: false,  // tell jQuery not to process the data
                                    contentType: false   // tell jQuery not to set contentType
                                }
                                // submit the image
                                $.ajax(options).done(onDone);
                            }, $event.target.files[0].type
                        );
                    },
                    {
                         maxWidth: 600,
                         canvas: true,
                         pixelRatio: window.devicePixelRatio,
                         downsamplingRatio: 0.5,
                         orientation: true
                    } // Options
                );
            },
            createImage(item, response) {
                ...
            }
        }
    }
</script>
此处的错误:
this.createImage(项目,响应)

由于无法在
函数(img){

我怎样才能解决这个问题


我需要此插件来修复方向图像

在方法的开头捕获当前的
,并使用它调用
创建图像
方法:

methods:{
  changeImage(item, $event) {
    const self = this
    loadImage($event.target.files[0], function(img){
      ...
        self.createImage(...)
      ...
    })
  }
}

@Bert的可能重复,似乎不重复。我没有找到答案there@Bert,在vue组件中,必须使用
调用method@Bert,如果
函数(img){
中出现错误。如果
不在
函数(img)中{
,没有错,也许你能帮我。看看这个:
methods:{
  changeImage(item, $event) {
    const self = this
    loadImage($event.target.files[0], function(img){
      ...
        self.createImage(...)
      ...
    })
  }
}