javascript - Uploadcare:如何从 openDialog 获取上传的文件?

标签 javascript uploadcare

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

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

在 0.16 中,不再有 uploadDone,它所做的只是返回一个没有任何数据的 promise 。我该怎么办?

最佳答案

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

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

关于javascript - Uploadcare:如何从 openDialog 获取上传的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20612290/

相关文章:

javascript - 使用 rxjs subject 在 Angular 7 中显示和隐藏组件

javascript - uploadcare 在reactjs应用程序中未定义

javascript - UploadCare 不在对话框中加载图像

php - 如何将 Uploadcare 图像保存在表单中?

javascript - jquerymobile 动态添加选择菜单

javascript - WebView 变白/空白

javascript - Uploadcare 通过 API 删除问题

javascript - Angular 上传护理 $parse 未定义错误

javascript - Alpaca 表单提交,保持在同一页面

javascript - Angular Js 在分离 View 、库和 Controller 文件时出错