मैं प्रतिक्रिया के साथ एक खोज इनपुट के लिए एक फिल्टर बनाने की कोशिश कर रहा हूँ। मेरे पास एक वस्तु के साथ एक fournisseurs सरणी है, जैसे:

fournisseurs: [
    {
      'id'              : '0',
      'codeFournisseur' : '2222222',
      'categorie'       : 'sdfgsdfg',
      'statusJuridique' : 'sdfgdfhs',
      'raisonSociale'   : 'sdfhdhs',
      'typeReglement'   : 'sdhgdfhdf',
      'delaiReglement'  : 'sdhfgdhs',
      'franco'          : 'sdfhsdh',
      'fraisDePort'     : 'sdhhsdhf',
      'adresse'         : 'sdfhsdfh',
      'codePostal'      : 'sfdgsdfgsdfg',
      'ville'           : 'sdgsd',
      'pays'            : 'France',
      'telephone'       : '+333333333333',
      'mail'            : 'dfxgdf@sdhgdfh.fr',
      'siteInternet'    : 'http://www.sdfgsdfhs.fr',
      'tvaIntracomm'    : 'sdfhsdghsdgh'
    }
]

समस्या यह है कि मैं पूरी वस्तु पर खोज नहीं कर सकता। मैं वस्तु के केवल एक तत्व (raisonSociale यहाँ) पर खोज कर सकता हूँ जैसे:

useEffect(() => {
        setData(searchText.length === 0 ? fournisseurs : _.filter(fournisseurs, fournisseur => fournisseur.raisonSociale.toLowerCase().includes(searchText.toLowerCase())))
    }, [fournisseurs, searchText]);

क्या कोई मुझे मार्गदर्शन करेगा यदि फ़िल्टर विधि में स्प्रेड ऑपरेटर का उपयोग करना संभव होगा या खोज से ऑब्जेक्ट के सभी तत्वों को पुनर्प्राप्त करने के समान कुछ होगा?

0
user12023869 30 अक्टूबर 2019, 19:18

1 उत्तर

सबसे बढ़िया उत्तर

इसे आज़माएं, मैंने दो नई कुंजियाँ जोड़ी हैं जिन्हें आप भी खोज सकते हैं

useEffect(() => {
    setData(searchText.length === 0 ? fournisseurs : {
       _.filter(fournisseurs, fournisseur => 
         return fournisseur.raisonSociale.toLowerCase().includes(searchText.toLowerCase()) ||
                fournisseur.typeReglement.toLowerCase().includes(searchText.toLowerCase()) ||
                fournisseur.delaiReglement.toLowerCase().includes(searchText.toLowerCase())
      )
    })
}, [fournisseurs, searchText]);

0
waqar 30 अक्टूबर 2019, 16:47