Ich habe eine Frage über das Filtern eines Arrays oder Ion-Liste basierend auf einigen Filtern, die Benutzer anwenden können. Kannst du mir bitte einen Hinweis geben, wie es geht und was ist der beste Weg, dies zu erreichen? Ich möchte eine ähnliche Funktionalität, die Amazon bietet. siehe Screenshot unten. Vielen Dank.Ionic 2 - Anwenden von Filtern auf die Ion-Liste
Antwort
Erstens würden Sie ein popover hinzufügen (das ist nur eine andere Seite in ionischer 2). Auf dieser Seite können Sie die Elemente erstellen, nach denen Sie filtern möchten.
Die Kommunikation zwischen den Seiten, die Seite für die Elemente, die Sie filtern möchten, und die popover Seite der Kategorien wird zu filtern, indem Sie mit ionischen 2 des navParams
Controller und/oder der onDidDissmis
Anruf in der popover Controller
Artikel Seite
import { Component } from '@angular/core';
import { NavController, NavParams, PopoverController } from 'ionic-angular';
import { FilterItemsPage } from '../../config/config.pages';
@Component({
selector: 'items-page',
templateUrl: 'items-page.html'
})
export class ItemsPage {
filteredItems:any;
constructor(public navCtrl: NavController, public navParams: NavParams,
public popoverCtrl:PopoverController) {}
openPopover(){
let popover = this.popoverCtrl.create(FilterItemsPage);
popover.onDidDismiss(data => {
this.filteredItems = data
});
popover.present();
}
}
wenn Sie openPopover()
klicken, wird es öffnen Sie Ihre Seite FilterItemPage
in einem popover die dann kann der Benutzer einen Eintrag auszuwählen, zu filtern. Das ausgewählte Filterelement muss dann an die Hauptelementseite zurückgegeben werden, wenn darauf geklickt wird, und die onDidDissmiss
für das Popover übergeben wird. Sie können diese Elemente halten, indem sie die Elemente vorbei, die ausgewählt wurden (und werden nun in filteredItems
gehalten) an die popover
Seite, und sammeln sie in der navParams
- siehe unten
// Passing items that have already been added
let popover = this.popoverCtrl.create(FilterItemsPage,this.filteredItems);
Jetzt in der popover Seite (FilterItemsPage)
import { Component } from '@angular/core';
import { NavController, NavParams, ViewController } from 'ionic-angular';
import { ItemsPage } from '../../config/config.pages';
@Component({
selector: 'filter-items-page',
templateUrl: 'filter-items-page.html'
})
export class FilterItemsPage {
PassedFilteredItems:any;
itemsToFilterBy:any;
constructor(public navCtrl: NavController, public navParams: NavParams,
public viewCtrl: ViewController) {
this.PassedFilteredItems = this.navParams.data;
console.log('Items Page:', this.PassedFilteredItems);
}
openPopover(){
let popover = this.popoverCtrl.create(FilterItemsPage);
popover.onDidDismiss(data => {
this.filteredItems = data
});
popover.present();
}
onSelectFilterOrSaveFilteredCollection(){
// Get selected items from a form (of model)
// See angular reactive forms
// https://angular.io/docs/ts/latest/guide/reactive-forms.html
// Pass items on dismiss
// will be passed into onDidDismiss
this.viewCtrl.dismiss(itemsToFilterBy);
}
}
- 1. Anwenden von Filtern auf Kind Aufzeichnungen
- 2. Elasticsearch Anwenden von Filtern auf Aggregation
- 3. Anwenden von Filtern auf eine Videodatei
- 4. Anwenden von jinja2 Filtern auf einen Block?
- 5. Funktion auf Spalte vor dem Filtern anwenden
- 6. Anwenden von Filtern auf das ausgegebene HTML für AngularJS
- 7. Countdown auf Ionic 2
- 8. Anwenden von Filtern auf get-Datei im Racket
- 9. Verwenden von TouchID auf Ionic 2
- 10. Ionic 2 Entprellen auf Gestenereignis
- 11. Ionic 2 Angular 2 - Zugriff auf NavController von Methode
- 12. Angular 2, Ionic 2
- 13. Ionic 2 searchbar Filter von 2 Eigenschaften
- 14. Anwenden von Filtern auf Bilder für die Suchfunktion unter Verwendung der Optionen
- 15. Ionic 2 - Verwalten von Abhängigkeiten
- 16. Ionic 2 & Ionic 1 funktioniert auf verschiedenen Node-Versionen
- 17. Was ist die Sprache Ionic 2 ist aufgebaut auf
- 18. Logisches NOT auf propEq anwenden und in ramda filtern
- 19. Anwenden von Filtern aus einem Array in CamanJS
- 20. Ionic 1 und Ionic 2 nebeneinander?
- 21. Wie man die Umrisse-Taste auf ionic 2 anwendet
- 22. Ionic 2 @ Ionic/Speicher funktioniert nicht auf Android-Gerät
- 23. Ionic 2: Deaktivieren Scrollen auf Seitenebene
- 24. Ionic 2 Fehlgeschlagen
- 25. Anwenden von Filtern beim expliziten Laden verwandter Entitäten
- 26. Update Ionic 2 Plattform
- 27. Ionic 2 Liveleload
- 28. Ionic 2: Anzeige Ausgabe auf IOS
- 29. IONIC 2 Datei Plugin
- 30. Anwenden von Filtern aus mehreren checkboxList zum Filtern von ListView in VB.net
Vielen Dank. Das habe ich tatsächlich benutzt. –