Я пытаюсь использовать Dropzone.js на моем веб-сайте Laravel.
Это мои настройки:
index.blade.php
:
<form action="/documents" method="POST" class="dropzone" id="my-dropzone" enctype="multipart/form-data">
@csrf
</form>
И в моем файле app.js
ниже приведен код:
window.Dropzone = require('dropzone');
(function () {
Dropzone.autoDiscover = false;
Dropzone.options.myDropzone = {
paramName: "file", // The name that will be used to transfer the file
maxFilesize: 1, // MB
acceptedFiles: 'image/*,application/pdf',
parallelUploads: 8,
addRemoveLinks: false,
createImageThumbnails: false,
autoProcessQueue: true,
previewTemplate: document.getElementById('dropzone-preview-template').innerHTML,
accept: function (file, done) {
console.log(file.name)
},
};
});
Фактический элемент Dropzone появляется на странице, и я могу использовать его для загрузки файлов.Однако мои Dropzone.options
не соблюдаются.
Например, я могу загружать файлы размером более 1 МБ, я могу загружать все типы файлов, даже если я хочу только иметь возможностьзагрузить изображения и файлы PDF.
Если переместить это: Dropzone.autoDiscover = false;
за пределы (function () {});
, элемент Dropzone вообще не будет работать.
Что я делаю неправильно?