Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

217
Views
Cómo pasar un valor a una cadena dentro de una variable de objeto JS

Tengo un formulario simple que necesita validación para las entradas del usuario. Si la entrada es demasiado larga, no quiero mostrar un error: "El valor ingresado es demasiado largo. El valor máximo es {{max}}". ¿Cómo puedo pasar el valor máximo a la cadena de error dentro de mi archivo dictionary.js? Este archivo contiene todas las cadenas que uso en el formulario.

En el archivo validator.js, hago un bucle en los campos de texto que tienen un valor y, si supera el máximo, recopilo el mensaje de error en una matriz. El mensaje de error se muestra debajo del campo específico.

La solución a continuación no funciona y muestra un texto "[Objeto objeto]" debajo del campo de texto. ¿Algunas ideas?

diccionario.js

 const eng = Object.freeze({ errors: { invalidLength: 'Entered value is too long. Max value is {{max}}.', required: 'Mandatory info is missing' }, ... ...

validador.js

 const validate = (values) => { const errors = {}; values.forEach(key => { const value = key.value; const max = key.max; if (value.length > max) { errors[key.field] = ('errors.invalidLength', {max}); } } }); return errors; }
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Puede transformar su objeto de errores en lo siguiente:

diccionario.js

 const eng = Object.freeze({ errors: { invalidLength: (maxValue) => `Entered value is too long. Max value is ${maxValue}.`, required: 'Mandatory info is missing' } })

Luego en tu validador: validator.js

 if (value.length > max) { errors[key.field] = eng.errors.invalidLength(max); }
about 4 years ago · Juan Pablo Isaza Report

0

Puedes intentar actualizar

 const eng = Object.freeze({ errors: { invalidLength: 'Entered value is too long. Max value is {{max}}.', required: 'Mandatory info is missing' }

a

 const eng = Object.freeze({ errors: { invalidLength: `Entered value is too long. Max value is ${max}.`, required: 'Mandatory info is missing' }

Y,

 if (value.length > max) { errors[key.field] = ('errors.invalidLength', {max}); }

a

 if (value.length > max) { errors[key.field] = eng.errors.invalidLength; }
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!