जानना चाहते हैं कि क्या फ़िल्टर विधि का उपयोग किसी शर्त के साथ करने का कोई तरीका है, तो उस स्थिति में, रंग काला नहीं हो सकता है, इसलिए लेबल और मान वाली वस्तु काली नहीं होगी लौटा हुआ। नीचे दिया गया कोड यह अपेक्षा के अनुरूप काम नहीं कर रहा है ...

function mapColors ({ colors } = colorsConfig) {
  return colors.filter(color => ({
    label: color.text !== 'black',
    value: color.text !== 'black'
  }))
}
0
Kaiser91 9 अक्टूबर 2018, 12:28

4 जवाब

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

आप Array.filter() विधि को गलत समझ रहे हैं, आपको इस विधि में कॉलबैक पास करने की आवश्यकता है जो या तो सही या गलत लौटाता है, लेकिन आपका उदाहरण एक ऑब्जेक्ट देता है। आप जो हासिल करना चाहते हैं उसे करने के लिए मैं इसे बदल दूंगा:

return colors.filter(color => (color.text !== 'black'))
1
Carwyn Stephen 9 अक्टूबर 2018, 09:32

फ़िल्टर करने के लिए आपको कॉलबैक फ़ंक्शन पास करना चाहिए

function mapColors ({ colors } = colorsConfig) {
    return colors.filter(color => {
        return color.text !== 'black' && color.label !== 'black'
    })
}
0
Hari Prathap 9 अक्टूबर 2018, 09:40

आप text की जांच कर सकते हैं और केवल गैर-काले आइटम प्राप्त कर सकते हैं।

function mapColors ({ colors } = colorsConfig) {
    return colors.filter(({ text } => text !== 'black');
}
0
Nina Scholz 9 अक्टूबर 2018, 09:32

फ़िल्टर आपसे एक बूलियन लौटाने की अपेक्षा करता है

function mapColors ({ colors } = colorsConfig) {
  return colors.filter(color => color.label !='black' && color.value!='black');
  }))
}
1
Pavan Andhukuri 9 अक्टूबर 2018, 09:30