Dropzone.js autoProcessQueue не работает в компоненте Vue - PullRequest
0 голосов
/ 28 ноября 2018

Я использую dropzone.Js внутри компонента Vue и пытаюсь отправить форму, в которой находится dropzone, только после нажатия кнопки подтверждения.

HTML:

<div class="form-group">
    <label for="dropzone-js" class="col-md-12 control-label">Choose a profile picture:</label>
    <!-- even though there is not path in the action there is still a post request -->
    <form action="#"
     class="dropzone"
     id="dropzone-js"></form>
</div>

Экран печати:

enter image description here

Сценарий компонента Vue:

 ready(){
  // I´ve tried to implement the autoProcessQueue to false in many ways, but 
  // withouth the desired result
  Dropzone.forElement(".dropzone").options.autoProcessQueue = false;
  Dropzone.options.autoProcessQueue = false;

  new Dropzone('#dropzone-js', {
    paramName: "profileImg", // The name that will be used to transfer the file
    maxFilesize: 2, // MB
    maxFiles: 1,
    autoProcessQueue:false,
    autoProcessQueue: false,
    uploadMultiple: false,
    accept: function(file, done) {
            console.log('event',event)

            console.log('accepted dropzone file', file)
            this.form.photo = file
            // done();
    },

    init: function() {
        this.on("addedfile", function(file, event) { 
            // this.form.photo = file
            // alert("Added file."); 
            console.log('event',event)
        });
    },
    init: function() {
            this.on("maxfilesexceeded", function (file) {
                    alert('Only 1 file allowed')
                    this.removeFile(file);
            });
    }
})
},

Я все еще не уверен, что яотсутствует здесь, но поскольку я впервые использую оба, я совершенно заблудился в спецификациях использования.

1 Ответ

0 голосов
/ 28 ноября 2018

Я нашел обходной путь, который, я думаю, не рекомендуется.Если кто-то знает лучший вариант, пожалуйста, прокомментируйте.

Мне пришлось отредактировать исходный код dropzone.js и установить autoProcessQueue = false, например:

enter image description here

Я думаю, что локальная настройка объекта dropzone не может переопределить глобальную конфигурацию autoProcessQueue.

...