Fine Uploader的文件ID一直是0,怎么改?

Fine Uploader file ID is always 0, how to change it?

我正在使用 Fine Uploader 的功能 "initial file list"。经过一些 我现在可以显示我的文件并想处理上传项目的删除。

根据 http://docs.fineuploader.com/branch/master/features/session.html,我的服务器端应该提供一个 JSON 数组,其中 Object 至少包含名称和 uuid(我正在使用 Fine Uploader 的简单模式)。

从下面的日志可以看出,UUID 属性 处理没有问题,我在服务器端接收它并成功删除文件。

问题出在成功删除后我想在客户端做一些其他事情,这就是为什么我这样列出 deleteComplete 事件:

.on('deleteComplete', function (event, id, xhr, isError) {
            if (!isError) {
                console.log("reducing the uploaded items");
                .... // do something here
            }

现在 id 参数是 0,这对我来说是个阻碍,因为我必须使用它进行进一步处理。我猜0来自之前提交的删除请求。

所以我正在寻找的是一种以某种方式告诉 Fine Uploader 我的 ID 是什么的方法。我想如果我在填充初始文件列表时能够正确地做到这一点,那么它将正确地传播到 deleteComplete 方法。

当我用初始文件列表加载页面并随后删除其中一个文件时,Fine Uploader 的输出:

...
"[Fine Uploader 5.1.3] Attempting to update thumbnail based on server response."
"[Fine Uploader 5.1.3] Detected valid file button click event on file '7a5a2ebd-f7d3-40a1-b9da-cde5fc9307c6', ID: 0."
"[Fine Uploader 5.1.3] Submitting delete file request for 0"
"[Fine Uploader 5.1.3] Sending DELETE request for 0"
"[Fine Uploader 5.1.3] Delete request for '7a5a2ebd-f7d3-40a1-b9da-cde5fc9307c6' has succeeded."
....

正如在评论中看到的那样,原来 id 字段是 Fine Uploader 内部管理的东西,操纵它是不可能的,也是不想要的。由于我的所有项目都有自己的 uuid 字段,因此我能够使用该字段进行进一步处理并区分已删除的文件。

为了检索提供的 iduuid 字段,可以使用如下所示的 get uuid from an id method

var uuid = $('#fine-uploader').fineUploader('getUuid', id);