Uploadcare:如何从openDialog上传文件?

Ale*_*kin 5 javascript uploadcare

我的场景 - 我想从我自己的按钮打开一个上传对话框,并获取上传的文件信息.在Uploadcare JS版本0.12中,我执行了以下操作:

$(".upload-image-button").on("click", function() {
  uploadcare.openDialog(null, {
    imagesOnly: true
  }).uploadDone(function(info) {
    setImage(info.cdnUrl);
  });
});
Run Code Online (Sandbox Code Playgroud)

在0.16中没有更多uploadDone,它只是返回一个没有任何数据的承诺.我该怎么办?

Dmi*_*hin 6

uploadDone从来没有公开API的一部分,并没有在文档中提到,所以它被删除.uploadcare.openDialog始终返回带有所选文件(或多上载对话框的文件组)的promise对象.但文件是承诺的:它在上传完成后解析.因此,要访问上传信息,您应订阅file.done:

$(".upload-image-button").on("click", function() {
    uploadcare.openDialog(null, {
        imagesOnly: true
    }).done(function(file) {
        file.done(function(fileInfo) {
            setImage(fileInfo.cdnUrl);
        });
    });
});
Run Code Online (Sandbox Code Playgroud)