Tengo esta condición aquí que verifica si el valor no está definido
console.log("Value: " + typeof getValues('departmentId')) if (String(getValues('departmentId')) != "" || String(getValues('departmentDesc')) != "" || typeof getValues('departmentId') !== undefined || typeof getValues('departmentDesc') !== undefined){ dispatch(setIsConfirm(true)) console.log("Clearing fields || Value: " + getValues('departmentId')) }Pero por alguna razón, aún funcionaba aunque no está definido, aquí está la imagen de la consola .
typeof devuelve una cadena. Así que necesitas hacer esto en su lugar:
console.log("Value: " + typeof getValues('departmentId')) if (typeof getValues('departmentId') !== "undefined" || typeof getValues('departmentDesc') !== 'undefined'){ dispatch(setIsConfirm(true)) console.log("Clearing fields || Value: " + getValues('departmentId')) } Además, asegúrese de que realmente necesita OR || operador y no AND && . Reemplácelo si es necesario.
Fui con esto:
if ((String(getValues('departmentId')) !== "" && typeof getValues('departmentId') !== "undefined") || (String(getValues('departmentDesc')) !== "" && typeof getValues('departmentDesc') !== "undefined")){ dispatch(setIsConfirm(true)) }