Ionic2 无法查看cordovaplugin捕获的图像

Ionic2 无法查看cordovaplugin捕获的图像,ionic2,cordova-plugins,Ionic2,Cordova Plugins,我按照此链接拍照并将其存储到内存中的目标文件夹中,我测试了它是否正常工作,接下来我尝试列出该文件夹中的所有文件,但我无法查看它 <ion-list> <ion-item><img [src]="file" *ngFor="let file in myFiles"></ion-item> </ion-list> import { Component } from '@angular/core'; import

我按照此链接拍照并将其存储到内存中的目标文件夹中,我测试了它是否正常工作,接下来我尝试列出该文件夹中的所有文件,但我无法查看它

<ion-list>
    <ion-item><img  [src]="file"  *ngFor="let file in myFiles"></ion-item>
  </ion-list>


import { Component } from '@angular/core';

    import { NavController, AlertController, ActionSheetController, ToastController, Platform, LoadingController, Loading } from 'ionic-angular';
    import { Camera } from 'ionic-native';
    import { File } from 'ionic-native';
    import { FilePath } from 'ionic-native';

@Component({
  selector: 'page-home',
  templateUrl: 'home.html'
})
export class HomePage {
    file;
    public base64Image: string;
    myFiles: string[];

 constructor(public navCtrl: NavController,
              public alertCtrl: AlertController){}
    listImage(){
            console.log("list image files");
            var fileSystem = cordova.file.externalRootDirectory;
            var folderpath = fileSystem + "Vanan Audio/";
            console.log("img",folderpath);
            File.listDir(cordova.file.externalRootDirectory, 'vanan Audio').then(
              (allFiles) => {
                // do something
                console.log(allFiles);
                var i =0
                console.log(allFiles[i+1].name);
                for (i = 0; i < allFiles.length; i++) { 
                    console.log(allFiles[i].name);
                    console.log(allFiles[i].nativeURL);

                }
                  this.myFiles = allFiles;
                return allFiles
              }
            ).catch(
              (err) => {
                // do something
              }
            );
        }
  }

从'@angular/core'导入{Component};
从“ionic angular”导入{NavController、AlertController、ActionSheetController、ToastController、Platform、LoadingController、Loading};
从“离子本机”导入{Camera};
从“离子本机”导入{File};
从“离子本机”导入{FilePath};
@组成部分({
选择器:“主页”,
templateUrl:'home.html'
})
导出类主页{
文件
public base64Image:字符串;
myFiles:string[];
构造函数(公共navCtrl:NavController,
公共警报Ctrl:AlertController){}
listImage(){
log(“列出图像文件”);
var fileSystem=cordova.file.externalRootDirectory;
var folderpath=fileSystem+“Vanan Audio/”;
log(“img”,folderpath);
listDir(cordova.File.externalRootDirectory,'vanan Audio')。然后(
(所有文件)=>{
//做点什么
console.log(所有文件);
变量i=0
log(所有文件[i+1].name);
对于(i=0;i{
//做点什么
}
);
}
}
现在我可以使用外部根目录拍摄照片并将其存储到文件夹中,我可以使用循环列出文件名,我需要将文件夹中的所有图像显示到我的ionic视图中

在设备上运行getting错误语句时,我收到了一条错误语句

deviceready has not fired after 5 seconds. cordova.js:1223
Unhandled Promise rejection: Template parse errors:
Can't bind to 'ngForIn' since it isn't a known property of 'div'. ("


    <div [ERROR ->]*ngFor="let file in myFiles">

        <img [src]="file.nativeURL"/>
"): HomePage@28:9.............................
DeviceRady在5秒后未启动。cordova.js:1223
未处理的承诺拒绝:模板分析错误:
无法绑定到“ngForIn”,因为它不是“div”的已知属性。("
]*ngFor=“让文件进入myFiles”>
"): HomePage@28:9.............................

在组件中有一组文件路径:

myFiles:any[];//assign empty array in constructor
this.myFiles = allFiles;
然后在
File.listDir中
(假设
listImage()
位于组件中):

在html中

<div *ngFor="let file of myFiles">
 <img [src]="file.nativeURL"/>
</div>


你不能只设置一个组件变量并在html中使用它吗?你能告诉我怎么做吗?函数是在提供程序中还是在组件中?否则你就得把承诺连成链检查我更新的问题@suraj。我没有添加任何提供商或服务,只是添加了插件和我的.ts文件,我想我没有正确地完成。当我的设备加载时,我会出错。我使用inspect元素检查,在我的手机中,我只看到一个白色屏幕。问题解决了吗?如果是的话,最好把问题结束并做标记。。