如何显示使用Cordova-Plugin-Media捕获捕获的图像



我正在使用此插件,该插件使我可以使用Android手机捕获图像。

现在,我应该如何显示在我的应用中捕获的图像?以下无效。它说:" typeError:无法执行'fileReader'上的'readasdataurl':parameter 1不是类型的'blob'。

function capturePhoto(){
    navigator.device.capture.captureImage(
        file=>{
            getBase64(file).then(b64=>{
                document.getElementById('fsPhotoI').src=b64;
            }).catch(e=>alert(e));
        },
        error=>{alert(error);},
        {limit:1}
    );
}
function getBase64(f) {
    return new Promise((resolve, reject) => {
        const reader = new FileReader();
        reader.readAsDataURL(f);
        reader.onload = () => resolve(reader.result);
        reader.onerror = error => reject(error);
    });
}

我解决了:

function capturePhoto(){
    navigator.device.capture.captureImage(
        file=>{
            document.getElementById('fsPhotoI').src=file[0].fullPath;
        },
        e=>{alert(JSON.stringify(e));},
        {limit:1}
    );
}

我忽略的一件事是,即使仅捕获一个图像,返回的"文件"变量是一个数组而不是一个文件。

最新更新