@AlexWeb6667
Web-дизайнер с опытом FullStack разработки

Как в дроп зоне отобразить уже загруженные картинки?

Всем привет, кто знаком с Дропзоной подскажите как в нее можно засунуть файлы при Update обьекта, то есть чтоб были в ппревью контейнере отображались картинки которые уже на сервере и в базе, пути к картинкам передаю через модель, но как бы их правильней в превью засунуть? Наткунлся на такую вот схемку,
// Create the mock file:
var mockFile = { name: "Filename", size: 12345 };

// Call the default addedfile event handler
myDropzone.emit("addedfile", mockFile);

// And optionally show the thumbnail of the file:
myDropzone.emit("thumbnail", mockFile, "/image/url");
// Or if the file on your server is not yet in the right
// size, you can let Dropzone download and resize it
// callback and crossOrigin are optional.
myDropzone.createThumbnailFromUrl(file, imageUrl, callback, crossOrigin);

// Make sure that there is no progress bar, etc...
myDropzone.emit("complete", mockFile);

// If you use the maxFiles option, make sure you adjust it to the
// correct amount:
var existingFileCount = 1; // The number of files already uploaded
myDropzone.options.maxFiles = myDropzone.options.maxFiles - existingFileCount;


потыкал, и понял что ничего не понял... ,не разъясните JS калеке?)

То что он вызывает события и запихивает в них инфу то понятно, но у меня чего-то не за работало, и вообще не понял, это все нужно выполнить, или для разных случаев методы? и вообще я дроп зону через плагин yii2 запускаю, но там суть та же вроде, просто с самими событиями немного не разобрался.
  • Вопрос задан
  • 856 просмотров
Решения вопроса 1
@AlexWeb6667 Автор вопроса
Web-дизайнер с опытом FullStack разработки
В Html

//Счетчик
<?php $counter = 0; ?>

<?php foreach ($model->images as $image): ?>

    <?php
          ++$counter;
    ?>

    <div class="server_img" id="server_img_<?= $counter ?>"><?= $image->name ?></div>

<?php endforeach; ?>


После формы зарегистрировать Js

//Кол-во блоков с классом .server_img(То есть блоков с именами)
var path = $('.server_img').length;

//Сколько картинок столько и циклов
for (i = 1; i <= path; i++) {

  //Имя каждой
  var img_name = $('#server_img_' + i).text(),
  mockFile = { name: img_name };

//Добавляем файл drop-zon через событие
myDropzone.emit("addedfile", mockFile);

//Делаем превьюху по Url где хранятся загруженные картинки
myDropzone.emit("thumbnail", mockFile, "/web/upload/store/Products/" + mockFile.name);

//Даем статус загруженные
myDropzone.emit("complete", mockFile);
    
    }
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
ddv88
@ddv88
Binance Futures
Правильно выбрать инструмент и не мучаться.
plugins.krajee.com/file-input/demo
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы