Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

218
Vistas
Token inesperado, esperado ")" en el componente React (si declaración)

Traté de crear una variable y un bucle for dentro de un componente funcional para mostrar las estrellas de calificación en un producto, pero cuando intento compilarlo, me sigue dando el mismo error:

 SyntaxError: Rating.js: Unexpected token, expected ")" for(let i=0; i<4; i++) { if({value}>i && {value}<i+1) { ^ stars.push( <i key={i}

No sé si no se puede poner un bucle for dentro de un componente funcional, si hay algo extra que no sé que no debería estar haciendo o si realmente tengo un error de sintaxis.

El código completo del componente:

 import React from 'react' const Rating = ({value, text, color}) => { let stars = []; for(let i=0; i<4; i++) { if({value}>i && {value}<i+1) { //<-- stars.push( <i key={i} style={{color}} className={ 'fas fa-star-half-alt' } /> )} else if({value}>i) { stars.push( <i key={i} style={{color}} className={ 'fas fa-star' } /> )} else { stars.push( <i key={i} style={{color}} className={ 'far fa-star' } /> ) } } return ( <div className='rating'> <span> {stars} </span> </div> ) } export default Rating
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

La causa principal de que esté utilizando la interpolación de manera incorrecta. No necesita usar {} fuera de su plantilla JSX, es por eso que JS culpa a {value} su declaración if es código JS, necesita usar {} cuando quiera incrustar algún valor JS en su plantilla JSX, por ejemplo, <span>{value}</span>

 import React from 'react' const Rating = ({value, text, color}) => { let stars = []; for(let i=0; i<4; i++) { if(value > i && value < i+1) { stars.push( <i key={i} style={{color}} className={ 'fas fa-star-half-alt' } /> )} else if( value > i) { stars.push( <i key={i} style={{color}} className={ 'fas fa-star' } /> )} else { stars.push( <i key={i} style={{color}} className={ 'far fa-star' } /> ) } } return ( <div className='rating'> <span> {stars} </span> </div> ) } export default Rating
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda