Así que estoy creando un software de recopilación de datos que se basa en gran medida en formularios y validaciones de formularios. Actualmente, he creado formularios dinámicos con Formik y Yup con validación individual, pero estoy buscando profundizar en la validación de la entrada actual de los usuarios en comparación con una entrada anterior para asegurarme de que el valor de la misma clave de los objetos aumente o disminuya según el formulario. ajustes.
const ObjOne = { NumberOne: 100, NumberTwo: 200, NumberThree: 300, } const ObjTwo = { NumberOne: 150, NumberTwo: 250, NumberThree: 350, } Quiero configurar algún tipo de sistema para comparar estos dos objetos para validar que el envío actual de los usuarios para NumberOne en Object Two se incremente correctamente por encima del valor anterior en Object One . Si dicho valor no se incrementa, devolvería un error que le indica al usuario que los datos no son válidos.
Si alguien pudiera ayudarme con una lluvia de ideas sobre cómo lograr esto o indicarme la dirección correcta, se lo agradecería mucho.
Con su ejemplo, puede hacer una función básica que compare los valores NumberOne :
const ObjOne = { NumberOne: 100, NumberTwo: 200, NumberThree: 300, } const ObjTwo = { NumberOne: 150, NumberTwo: 250, NumberThree: 350, } const check = (one, two) => { if (two.NumberOne > one.NumberOne) console.log('ok'); else console.log('ko'); } check(ObjOne, ObjTwo);En este ejemplo, solo se comparan los valores Número Uno, pero puede hacer una función más complicada para verificar todas las claves. Este ejemplo solo responde a su pregunta específica.
Esto hace el trabajo para el ejemplo dado:
const check = (one, two) => { if (two.NumberOne < one.NumberOne || two.NumberTwo < one.NumberTwo || two.NumberThree < one.NumberThree) console.log('ko'); else console.log('ok'); }