2017-01-24 2 views
1

Ich habe einige Probleme beim Anzeigen der JSON-formatierten Daten in HTML-Datei. Es funktioniert erfolgreich, aber die Liste wird nicht angezeigt. Diese in meinem Code ...Fehler beim Anzeigen der JSON-Format-Liste in HTML kann nicht angezeigt werden

import { Component } from '@angular/core'; 
import { Platform } from 'ionic-angular'; 
import { Hotspot, Network } from 'ionic-native'; 


@Component({ 
    selector: 'page-home', 
    templateUrl: 'home.html' 
}) 

export class HomePage { 

constructor(public platform: Platform){ 
    this.platform = platform 
} 
    List(){ 
     Hotspot.scanWifi().then((networks:Array<Network>)=>{ 
     console.log(networks); 
    }); 
    } 
} 

Das ist mein HTML-Datei ist

<ion-header> 
    <ion-navbar> 
    <ion-title> 
     Ionic Blank 
    </ion-title> 
    </ion-navbar> 
</ion-header> 

<ion-content padding> 
    <button ion-button color="Primary" (click)="List()">ScanWifi</button> 
    <div *ngFor="let network of networks"> 
    <ion-list> 
    <ion-item> 
     <h2>{{network}}</h2><br> 
    </ion-item> 
    </ion-list> 
    </div> 
</ion-content> 
+0

Bitte fügen Sie Ihren Code in Ihre Frage und nicht als Bilder, danke! – Alex

+2

Netzwerke sind nirgendwo definiert. –

+0

Bitte geben Sie die Fehlermeldung und Zeilennummer, können wir nicht Ihren Code erfüllen –

Antwort

1

Sie sind nur Ihr Ergebnis Console anmelden, Ihr aktueller Code:

List(){ 
    Hotspot.scanWifi().then((networks:Array<Network>)=>{ 
    console.log(networks); 
}); 

Sie brauchen d eine lokale Variable zu deklarieren networks, so dass Sie es in der Ansicht verwenden können, wie Sie haben:

So Ihr Code wie folgt aussehen sollte:

networks; 

List(){ 
    Hotspot.scanWifi().then((networks:Array<Network>)=>{ 
    this.networks = networks; 
}); 

, so dass Sie auf Ihre Netzwerke beziehen sich in Ihrem Ausblick:

<div *ngFor="let network of networks"> 

EDIT: ich zuerst fälschlich „angenommen“, dass Hotspot in den Konstruktor injiziert werden muß, sondern von einigen Recherchen fand ich heraus, dass Hotspot ein eigentliches Element mit Methoden, und deshalb aufgerufen werden kann nur um Hotspot.scanWifi() wie gesehen werden kann here.

+0

richtig .. verpasste den Hotspot .. und wenn das fehlt, wie läuft das reibungslos? –

+0

@suraj .. "Running reibungslos" cuz jetzt realisiert die List-Methode wird nie aufgerufen. Verpasst das ebenso wie zuerst;) – Alex

+0

nope..it ist in html button click .. –

0

Sie haben Netzwerke Array in der Klasse setzen

export class HomePage { 
networks:any; 
constructor(public platform: Platform){ 
    this.platform = platform 
} 
    List(){ 
     Hotspot.scanWifi().then((networks:Array<Network>)=>{ 
     console.log(networks); 
     this.networks = networks;//or do forEach and push 
    }); 
    } 
} 
Verwandte Themen