5

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

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

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

4

1 回答 1

6

uploadDone从来都不是公共 API 的一部分,也没有在文档中提及,所以它被删除了。uploadcare.openDialog总是返回带有选定文件的承诺对象(或用于多重上传对话框的文件组)。但是文件本身就是承诺:它会在上传完成时解析。因此,要访问上传信息,您应该订阅file.done

$(".upload-image-button").on("click", function() {
    uploadcare.openDialog(null, {
        imagesOnly: true
    }).done(function(file) {
        file.done(function(fileInfo) {
            setImage(fileInfo.cdnUrl);
        });
    });
});
于 2013-12-16T13:43:39.487 回答