Не удаляйте последний файл на dropzone.js - PullRequest
0 голосов
/ 28 октября 2018

Я использую плагин Dropzone JS для загрузки и управления изображениями на моем сервере.Все отлично работает, но теперь мне нужно заставить пользователя оставить хотя бы одно изображение для продукта.Это означает, что если пользователи хотят изменить изображения, они должны загрузить новое изображение, прежде чем удалить старое.

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

Вот мой код

$("div#myId").dropzone({
    url: "/stores/sell_upload/",
    maxFiles: 4,
    acceptedFiles: "image/*",
    addRemoveLinks: true,
    renameFile: function(file) {
        let newName = file.name.replace("." + file.name.split(".").pop(), "") + "-" + new Date().getTime() + "." + file.name.split(".").pop();
        return newName;
    },
    removedfile: function(file) {
        $.ajax({
            type: "POST",
            url: "/stores/sell_upload/",
            data: {
                name: file.name,
                action: "delete"
            }
        });
        var _ref;
        return (_ref = file.previewElement) != null ? _ref.parentNode.removeChild(file.previewElement) : void 0;
    }
});

1 Ответ

0 голосов
/ 29 октября 2018

Итак, не будет ли проще, если вы подтвердите файлы в действии кнопки для сохранения?Я имею в виду, что область dropzone может быть пустой, но вы в своем действии кнопки подтверждаете, что это должен быть хотя бы один файл в области, которую нужно сохранить.

...