Как изменить имя файла на Dropzone Upload? - PullRequest
1 голос
/ 02 марта 2020

У меня есть следующий код:

this.on("sending", function (file, xhr, formData) {
    file.name = file.name + new Date().getTime();
    alert(file.name);

Мне нужно объединить файл foreach с указанием даты и времени, чтобы у каждого файла было уникальное имя во внешнем интерфейсе. Однако это предупреждение возвращает исходное имя:

Фактическое возвращение: "fileName.png" Требуется возврат: "fileName-2/03 / 2020-10: 26: 32"

Что я делаю неправильно?


Я пытаюсь так:

            renameFilename: function (file) {
            let newName = new Date().getTime() + '_' + file; 
            file = newName;
            return file;
        },

        init: function () {

Это на свойствах, и когда я использую alert (file) внутри оператора работает нормально, возвращает: 12312354_filename.

однако имя файла не изменяется в качестве параметра в других методах dropzone.

Ответы [ 2 ]

0 голосов
/ 05 марта 2020

Для меня это работало на 5.2.0:

<script type="text/javascript">

var CountFiles = 0;

$(document).ready(function () {

    Dropzone.autoDiscover = false;

    var Drop1 = new Dropzone("div#myPrincipalDropzone", { url: "/Article/UploadFiles",

        paramName: "file",
        maxFiles: 1,
        maxFilesize: 1200,
        maxFileHeight: 840,
        maxFileWidth: 840,
        acceptedFiles: ".png,.jpg",           
        addRemoveLinks: true,
        parallelUploads: 1,
        renameFile: function () {
            let newname = new Date().getTime() + '_' + 'Test';
            console.log("Nombre en RenameFile:" + newname);
            return newname;
        //},

        //init: function (newname) {

            this.on("addedfile", function (file) {

Однако некоторые @ Model.Params, отправленные ajax, передают "null", что работает с оригинальным именем файла. Я все еще выясняю, почему это произошло, но надеюсь, что это поможет погибшим душам.

0 голосов
/ 02 марта 2020

Конфигурация Dropzone хорошо объяснена здесь

renameFilename является устарела .

Вы можете использовать renameFile вместо.

renameFilename: function (file) {
            file.name= new Date().getTime() + '_' + file.name; 
           }

Вы по-прежнему будете иметь фактическое имя файла , к которому можно получить доступ, используя file.upload.filename

...