2017-02-01 11 views
1

デバイスのギャラリーから選択したbase64でエンコードされた画像をアップロードしようとしています。Nativescript imageSource.fromAsset getImageAsyncエラー

基本的には、画像を選択してとしてImageViewと設定します。 ImageViewsrcが何であれアップロードします。

私は画像の選択のためのnativescript-imagepickerを使用しています:

私は次の操作を実行しようとアップロード方法でその後
let context = imagePicker.create({ 
     mode : "single" 
    }); 
    context.authorize() 
     .then(()=>{ return context.present();}) 
     .then((selection)=>{ 
      selection.forEach((selected)=>{ 
       selected.getImage().then((value :ImageSource)=>{ 
        imageView.src = value; //here I set the image as source 
       }) 
      }) 
     }); 

fromAsset方法はNativescriptのImageSourceモジュールの一部です。画像はギャラリーからを選択した場合

fromAsset(imageView.src).then(
    (res) => { 
    imageSource = res; 
    photo.base64 = imageSource.toBase64String('jpg'); 
    .. 
}).catch((error)=>{ 
    console.log(error); // here I get TypeError.asset.getImageAsync is not a function 
}) 

私がイメージして上記の方法を使用ししかし、すべてが順調に進めカメラから直接、スナップ、私は次のエラーを取得する:TypeError.asset.getImageAsyncではありません機能

私は間違っていますか?

+0

あなたのtns-core-modulesとNativeScript CLIをアップデートしてください。 –

+0

また、ギャラリーからのテンポラリイメージを使って作業している場合、明示的に保存してから、imageSourceをhttps://github.com/ NativeScript/sample-ImageUpload/blob/master/app/main-page.js#L93-L95 –

答えて

0

私はこのリンクでコードを使用しており、完璧に動作しています!あなたのtns-core-modulesとNativeScript CLIをアップデートしてください。

関連する問題