Para una determinada solicitud de axios:
API.post(
`v${process.env.REACT_APP_API_VERSION}/register/company/`,
{
type: values.type,
dba: values.dba,
ein: values.ein,
file_type: values.file_type,
},
Me gustaría evitar enviar parámetros si no se les asigna un valor (siguen siendo "").
es decir Me gustaría saber la forma más limpia de incluir solo parámetros no vacíos en mi objeto de solicitud. Puedo hacer esto usando una verificación if, pero hacerlo para cada elemento en solicitudes más grandes no tendría sentido. por ejemplo:
const postData = {
first_name: values.first_name,
last_name: values.last_name
};
if (values.middle_name !== "") {
postData.middle_name = values.middle_name;
}
Gracias
- Omar Hussein
SourcePuedes intentar algo como esto:
Object.keys(values).forEach((key) => {
if(!values[key]) delete values[key];
})
Lo que hace básicamente es eliminar cualquier elemento dentro del objeto values
que sea falso, lo que incluye cadenas vacías.