Ionic 4:显示来自相机插件的图像或在何处找到normalizeUrl

时间:2018-09-25 00:52:09

标签: camera ionic-native ionic4

我想从@ionic-native/camera格式化我的URL,但是由于版本更改,我现在找不到它的位置。

没有它,我得到的网址像(看起来不错,但不起作用):

enter image description here

代码:

getImage() {
    const options: CameraOptions = {
      quality: 100,
      targetWidth: 600, 
      sourceType: this.camera.PictureSourceType.PHOTOLIBRARY,
      destinationType: this.camera.DestinationType.FILE_URI,
      encodingType: this.camera.EncodingType.JPEG,
      mediaType: this.camera.MediaType.PICTURE
    };

    this.camera.getPicture(options).then(
      imageData => { 
        this.imageURI = imageData;
        // this.sanitize.bypassSecurityTrustUrl(imageData);
        alert(this.imageURI);
        alert(imageData);
      },
      err => {
        console.log(err);
        alert(err);
      }
    );
  }

已经尝试bypassSecurityTrustUrl,但没有结果。不幸的是,由于多种原因,我无法通过Chrome或仿真器调试代码。也许normalizeUrl可以帮助我,但它不在@ ionic / angular软件包中。

1 个答案:

答案 0 :(得分:1)

解决方案是此代码 导入之后和组件插入之前 declare var window; 然后

  this.camera.getPicture(options).then(
      imageData => { 
        this.imageURI = window.Ionic.WebView.convertFileSrc(imageData)
        // this.sanitize.bypassSecurityTrustUrl(imageData);
        alert(this.imageURI);
        alert(imageData);
      },
      err => {
        console.log(err);
        alert(err);
      }
    );

像魅力一样工作!