离子2-不能在UI上显示局部图像



我做了这个教程。

一切都可以,但是当从画廊中选择图像时,图像uri通过其属性分配给img元素:src(img[src](。然后将图像显示为损坏。

我记录了图像URI并得到以下内容:

content://com.android.providers.media.documents/document/image%3A1792

然后,仅用于测试,我用真实的路径覆盖了url,并且也损坏了图像。这是我尝试的真正路径:

/storage/9016-4EF8/DCIM/Camera/20170422_202334.jpg

那么,我的问题是:如何使用其路径在ionic2 UI上显示图像?

也许问题是嵌入式webview(如普通浏览器((Ionic/Cordova(没有权限出于安全原因显示本地媒体吗?在这种情况下,应该是解决此问题的方法或插件?

在摄像机子示例上方的教程上工作正常,因为分配给图像元素的是base64格式的图像的内容,但是我想使用path,因为我认为这很清楚。

>

我尝试了以下链接中的一些建议,但没有成功。也许是一个不适合当前平台的旧链接(或建议还可以,我犯了一些错误(。https://forum.ionicframework.com/t/no-local-image-showing-in-view-view-on-device/30647

在这里您有一些我的系统的信息:

$ npm -v
3.10.10
$ cordova -v
6.5.0
$ ionic info    
Your system information:    
Cordova CLI: 6.5.0
Ionic CLI Version: 2.2.3
Ionic App Lib Version: 2.2.1
ios-deploy version: Not installed
ios-sim version: Not installed
OS: Windows 10
Node Version: v6.10.2
Xcode version: Not installed

关于如何获得此工作的任何想法?

此问题是由于在Android中使用sourceType: CAMERA. PHOTOLIBRARY所致,URI无法在IMG SRC属性中显示。要解决此问题,请使用以下代码来纠正图像路径。

    Camera.getPicture(options).then((imagePath) => {
     // Correcting android photolibrary image page
     this.nativeFilePath = imagePath;
     if (this.pl.is('android') && sourceType === Camera.PictureSourceType.PHOTOLIBRARY) {
       FilePath.resolveNativePath(imagePath)
       .then(filePath => {
           this.nativeFilePath = filePath;
           let currentName = imagePath.substring(imagePath.lastIndexOf('/') + 1, imagePath.lastIndexOf('?'));
       });
     } else {
       var currentName = imagePath.substr(imagePath.lastIndexOf('/') + 1);
     }
    }, err => {
     // this.presentToast('upload image fail.');
    });

希望这会有所帮助!

相关内容

  • 没有找到相关文章

最新更新