我关注了关于将初始文件设置为预填充文件池的文件池文档。现在,我想编写一个自定义还原函数,在该函数中我可以根据文件来源使用不同的函数。
以下是显示我想要实现的目标的假设代码:
#hypothetical code
revert: (uniqueFileId, load, error) => {
console.log('uniqueFileId is +' uniqueFileId);
const origin = ? ; //cannot figure out how to get file origin.
if (origin =='1'){ // origin is input
// run default function to remove input file
} else if (origin =='2'){ // origin is limbo
// run custom function to remove limbo file from server
});
} else { // origin is local
// run custom function to remove local file from server
}
error('oh my goodness');
// Should call the load method when done, no parameters required
load();
},
问题 1: 我无法获取文件的来源。我在revert函数中尝试了以下代码,但都没有工作。我应该如何获取文件的来源?
const origin = origin;
console.log('origin is ' + origin); // console not printing anything, no error message.
const origin1 = FilePond.getFile().origin;
console.log('origin1 is ' + origin1);// console not printing anything, no error message.
问题2: 假设我可以得到文件的来源,我应该如何编写函数来删除输入文件?(在起源 == 1 的情况下)?我发现的一件事是,当我单击新添加的文件上的取消按钮时,uniqueFileId 为“成功”。我不确定这是否应该是因为文件尚未上传或我做错了什么。
在“LIMBO”的情况下,uniqueFileId 正确显示为文件名,例如“1.jpg”。我能够将此 ID 传递给服务器。