Search code examples
ionic4capacitor

Property 'base64Data' does not exist on type 'CameraPhoto' in Ionic4 using capacitor


I was following a tutorial where for uploading a picture from native application they choose resultType as CameraResultType.Base64 and then got the base64Data from that image and finally convert that to filestream. But in my case base64Data this property was not available. I want to know what is wrong with my code. Here is my code snippet:

import {Plugins, Capacitor, CameraSource, CameraResultType} from '@capacitor/core';

Plugins.Camera.getPhoto({
      quality: 50,
      source: CameraSource.Prompt,
      correctOrientation: true,
      height: 320,
      width: 320,
      resultType: CameraResultType.Base64
    }).then(image => {
      this.selectedImage = image.base64Data;
    }).catch(err =>{
      console.log(err);
    });

I need to upload the image as file stream. Is there any other way to get the filestream from the taken image or webpath? If anyone know the work around please let me know. I already ran 'ionic capacitor update' command to make sure my capacitor is up-to-date


Solution

  • You are following an out of date tutorial, base64Data was removed before the final release.

    You can use base64String instead, but note that base64String is just the base64 representation of the image, if you want a data url that can be used as a img src you should use CameraResultType. DataUrl and image.dataUrl