Tengo este código y estoy tratando de agregar algunas declaraciones IF al botón de envío, por lo que no envía nada vacío, o que no sean números y operadores aritméticos, o muestra un error cuando los operandos son más que operadores y viceversa, sin embargo, no parece funcionarAquí está el código completo .
const handleSubmit = (e) => { if (inputValue.length === 0) { e.preventDefault(); setResult("You did not enter anything!") } if (inputValue === isNaN && inputValue !== validOperators) { e.preventDefault(); setResult("only numbers!") } else { e.preventDefault(); setResult(solution); setInputValue(""); } }isNan no es un valor, es una función. Tienes que llamarlo.
Supuse que validOperators es una matriz o una cadena que contiene los operadores válidos.
Si es así, esto es lo que quieres:
const handleSubmit = (e) => { if (inputValue.length === 0) { e.preventDefault(); setResult("You did not enter anything!") } if (isNaN(inputValue) || !validOperators.includes(inputValue)) { e.preventDefault(); setResult("only numbers (and valid operators)!") } else { e.preventDefault(); setResult(solution); setInputValue(""); } }