2016-08-11 3 views
1

ionic 2のプロジェクトでionic-nativeのCameraPreviewクラスを使用して写真を撮るので、実際に画像のパスに苦労します:assets-library:// asset/asset .JPG?id = ...Ionic 2:CameraPreviewプラグイン、指定されたURIをどう扱うか?

このタイプのURLは明らかにDOMでレンダリングすることはできません。imgまたはion-imgタグのサポートされているURLに変換する方法を知りたいと思います。

次のリンクで示唆されているようにFile.readAsDataURL()を使用して変換しようとしましたが、プロミスは空の文字列を返します。

https://www.npmjs.com/package/cordova-camera-preview http://ionicframework.com/docs/v2/native/file/

答えて

0

あなたはBLOBとしてhttp経由でそれをロードして、IMG SRC用としてあることを設定することができます。

以下の例:

this.http.get(fileURI, new RequestOptions({responseType:ResponseContentType.Blob})) 
      .subscribe(
       data => { 
        var blob = data.blob(); 
        this.previewImage = this.sanitize(URL.createObjectURL(blob)); 
        this.cd.detectChanges(); 
       }); 

サニタイズ機能をメモします。

<div [style.width.px]="cameraSize" [style.height.px]="cameraSize"> 
    <img id="preview" [src]="previewImage"> 
</div> 
:imgタグがpreviewImage変数にバインドされている。この例では https://stackoverflow.com/a/37432961/3446442

を参照してください - これは、デフォルトのブラウザのセキュリティを回避するために必要とされます

関連する問題