Dropzone 只为最后一个文件构建缩略图

Dropzone only builds thumbnail for last file

我需要将现有文件预加载到 Dropzone 实例中-Div。我在网上查找了一些类似的问题,但找不到任何东西。我想随时随地创建缩略图,只要只有一个文件,它就可以很好地工作。如果有超过 1 个文件,它只生成最后一个文件的缩略图。

这是我的 .dropzone 中的初始化函数:

init: function() {      
                // Create the mock files:
                var dropZoneInstance = this;

                // Load Files
                $.ajax({
                   url: 'ajaxcall.php',
                    data: {id: profil,zuordnung: zuordnung, ajaxcall: 'readAnhänge'},
                   success: function (response) {

                    var files = JSON.parse(response);

                    for (i = 0; i < files.length; i++)
                    {
                        var obj = files[i];
                        console.log(obj);

                        dropZoneInstance.files.push(obj);
                        dropZoneInstance.emit("addedfile", obj);

                        dropZoneInstance.createThumbnailFromUrl(obj, 
                            dropZoneInstance.options.thumbnailWidth, 
                            dropZoneInstance.options.thumbnailHeight,
                            dropZoneInstance.options.thumbnailMethod, true, function (thumbnail) 
                            {
                                dropZoneInstance.emit('thumbnail', obj, thumbnail);
                            }
                        );

                        dropZoneInstance.emit("complete", obj);
                    }
                   }
                });
            }

这是 PHP-JSON 的代码:

        function ReadFromZuordnung($zuordnung = 0)
        {
            $var = Array();

            global $dbh;
            global $user;

            $query = $dbh->prepare("
                SELECT
                    anhang_id AS id
                FROM
                    tbl_anhang
                WHERE
                    anhang_profil = :profil
                AND
                    anhang_zuordnung = :zuordnung
                ");
            $query->bindValue(':profil', $this->getId(), PDO::PARAM_INT);
            $query->bindValue(':zuordnung', $zuordnung, PDO::PARAM_INT);
            $query->setFetchMode(PDO::FETCH_CLASS, 'Test');
            $query->execute();
            while($row = $query->fetch())
            {
                $var[] = Array("id"=>$row->getId(),"name"=>$row->getName(),"size"=>0,"dataURL"=>$this->getUploadPfad().$row->getName());
            }

            echo json_encode($var);
        }

这就是我的 test.php:

    <div id="dropzone" class="dropzone" profil="1">
          <div class="dz-default dz-message"></div>
    </div>

这是结果:https://imgur.com/9ezsnrk

我希望每个文件都有缩略图,而不仅仅是最后一个。

有什么建议吗?

好的,我又找了两天答案自己搞定了:

刚刚改变

var obj = files[i];

let obj = files[i];

解决了问题。

当他遇到同样的问题时,也许其他人会节省一些时间。