Javascript 如何使用dropzone上载文件&;vueJs

Javascript 如何使用dropzone上载文件&;vueJs,javascript,laravel-5,dropzone.js,vue.js,Javascript,Laravel 5,Dropzone.js,Vue.js,请帮帮我。 我正在使用DropzoneJs&vueJs,我希望使用dropzone.js在vueJs中上载文件,但不起作用,我尝试过这样做&msg error uploadImageGallery.options.autoProcessQueue = true is not a function uploadImageGallery.processQueue is not a function 我怎样才能解决这个问题 函数uploadImageGallery() { Dropzone.aut

请帮帮我。
我正在使用DropzoneJs&vueJs,我希望使用dropzone.js在vueJs中上载文件,但不起作用,我尝试过这样做&msg error

uploadImageGallery.options.autoProcessQueue = true is not a function
uploadImageGallery.processQueue is not a function
我怎样才能解决这个问题

函数uploadImageGallery()
{
Dropzone.autoDiscover=false;
var uploadImageGalleryVar=$(“.upload\u按钮\u新闻”).dropzone({
url:base_url+“/myRoute”,
addRemoveLinks:是的,
口述:,
自动处理队列:false,
dictRemoveFile:“x”
});
}
var vmGallery=新的Vue({
el:“#厨房控制员”,
数据:{},
方法:{
AddGallery:函数(){
console.log('add');
uploadImageGalleryVar.options.autoProcessQueue=true;
uploadImageGalleryVar.processQueue();
},
},
就绪:函数(){
上传ImageGallery();
}
});
  • 将函数移到您的方法中,以便您可以通过
  • 使用
    新建Dropzone()
    来创建Dropzone实例,而不是
    $()。Dropzone?
  • 将新实例另存为vm属性,而不是变量
  • 通过该属性在其他方法中访问它
像这样:

var vmGallery = new Vue({

  el: '#GalleryController',
  data: {},

  methods: {
      AddGallery() {
        console.log('add');
        // access dropzone instance through vm property
        this.uploadImageGalleryVar.options.autoProcessQueue = true;
        this.uploadImageGalleryVar.processQueue();
      },

      // move function into yor methods.
      uploadImageGallery() {
        Dropzone.autoDiscover = false;
        // save dropzone instance as vm property
        // use new Dropzone() to create it instead of jQuery shortcut
        this.uploadImageGalleryVar = new Dropzone($(".upload__button__news"), {
          url: base_url + "/myRoute",
          addRemoveLinks: true,
          dictCancelUpload: "",
          autoProcessQueue: false,
          dictRemoveFile: "x"
        });
      }
  },

  ready: function() {
    uploadImageGallery();
  }
});
就这样

  • 将函数移到您的方法中,以便您可以通过
  • 使用
    新建Dropzone()
    来创建Dropzone实例,而不是
    $()。Dropzone?
  • 将新实例另存为vm属性,而不是变量
  • 通过该属性在其他方法中访问它
像这样:

var vmGallery = new Vue({

  el: '#GalleryController',
  data: {},

  methods: {
      AddGallery() {
        console.log('add');
        // access dropzone instance through vm property
        this.uploadImageGalleryVar.options.autoProcessQueue = true;
        this.uploadImageGalleryVar.processQueue();
      },

      // move function into yor methods.
      uploadImageGallery() {
        Dropzone.autoDiscover = false;
        // save dropzone instance as vm property
        // use new Dropzone() to create it instead of jQuery shortcut
        this.uploadImageGalleryVar = new Dropzone($(".upload__button__news"), {
          url: base_url + "/myRoute",
          addRemoveLinks: true,
          dictCancelUpload: "",
          autoProcessQueue: false,
          dictRemoveFile: "x"
        });
      }
  },

  ready: function() {
    uploadImageGallery();
  }
});

就这样了

谢谢你的回答,但仍然对我有用,消息错误仍然是一样的“uploadImageGallery.options.autoProcessQueue=true不是函数,uploadImageGallery.processQueue不是函数”你能在jsfiddle.net上重新创建问题吗?rivision msg error“无法读取未定义的属性'options',未定义的processQueue”“谢谢您的回答,但对我来说仍然有效,消息错误仍然相同”“uploadImageGallery.options.autoProcessQueue=true不是函数,uploadImageGallery.processQueue不是函数”“您能在JSFIDLE.net上重新创建问题吗?rivision msg error to”无法读取未定义的属性“选项”&未定义的processQueue“