Estoy recibiendo una lista del backend. Hay 5 objetos en mi lista entrante. Quiero recorrer solo aquellos cuyo "estado" es "6". También hay un botón "continuar". No mostraré este botón dependiendo de la situación.
respuesta
estado 3 = factura pagada
estado 6 = factura sin pagar
policyInstallmentDtoList: Array(5) 0: {installmentNumber: 1, amount: 3032, currency: 'USD', status: '3', date: '09-06-2022'} 1: {installmentNumber: 2, amount: 3032, currency: 'USD', status: '3', date: '09-07-2022'} 2: {installmentNumber: 3, amount: 3032, currency: 'USD', status: '6', date: '09-08-2022'} 3: {installmentNumber: 4, amount: 3032, currency: 'USD', status: '6', date: '09-09-2022'} 4: {installmentNumber: 5, amount: 3032, currency: 'USD', status: '6', date: '09-10-2022'}js
const [hiddenControlButtonClass, setHiddenControlButtonClass] = useState('policypaymentinfo__button_container'); useEffect(() => { if (paymentInfoData?.policyInstallmentDtoList?.map((payment) => payment.status)) { setHiddenControlButtonClass('hidden'); } else { setHiddenControlButtonClass('policypaymentinfo__button_container'); } }, [paymentInfoData]);policyInfoData es el nombre de la lista entrante.
Quiero recorrer el estado 6 en el primer bloque if.
html
<PaymentTable variant="edit" paymentList={paymentInfoData} value={value} collectionMethod={collectionMethod} /> <div className={hiddenControlButtonClass}> <AS.Button variant="outlined" onClick={handlePayment}> Contiune </AS.Button> </div>Puedes hacerlo:
useEffect(() => { paymentInfoData?.policyInstallmentDtoList?.forEach(item => { if(item.status == '6') { setHiddenControlButtonClass('hidden'); } else { setHiddenControlButtonClass('policypaymentinfo__button_container'); } }) }, [paymentInfoData]);