problème des fonctions de filtrage
-
19-09-2019 - |
Question
Je travaille sur un composant de recherche pour une application je travaille et je besoin d'ajouter des filtres à elle. Je l'ai trouvé un exemple et a obtenu le premier bon travail de filtre.
Maintenant, je suis en train d'ajouter un second filtre que je cours dans des problèmes ... Dans l'exemple que je trouve qu'ils utilisent filterFunctions, mais je reçois seulement une option pour filterFunction, pourquoi?
Voici l'exemple de code
productsCollection.filterFunctions =
[
filterByPrice, filterByType,
filterByCondition, filterByVendor
]
Et ce que je suis en train
acData.filterFunction = [filterByStatus, filterByDate]
mais avec ce code, je reçois le message d'erreur suivant - 1067:. Contrainte implicite d'une valeur de type Array à une fonction de type sans rapport avec
Pourquoi suis-je recevoir cette erreur et comment pourrais-je vais ajouter environ plusieurs filtres à ma collection Array?
Merci!
La solution
filterFunction
doit être réglé à une seule fonction et non une Array
ou tout autre type de données. Pour combiner plusieurs fonctions en créer un qui les combine, comme ceci:
acData.filterFunction = function(item:Object)
{
return
filterByPrice(item) &&
filterByType(item) &&
filterByCondition(item) &&
filterByVendor(item);
};
Si vous avez vu un échantillon utilisé au pluriel filterFunctions
qui a accepté un tableau, poster un lien. C'est nulle part dans le cadre Flex standard ou dans la nouvelle version bêta 4.0 afaik.
Autres conseils
Il semble que vous allez devoir prolonger un ArrayCollection pour le faire fonctionner. ce lien devrait épeler pour vous: http: // blog. rotundu.eu/flex/arraycollection-with-multiple-filter-functions/