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

118
Vistas
¿Es posible crear enlaces en línea dinámicos con Alpine.js?

Me gustaría crear un enlace dinámico :class o :style que use datos almacenados en una variable Alpine.js.

 <div x-data="{ divClass: 'inner', color: 'red' }"> <div :class="${divClass}" :style="background-color: ${color}"></div> </div>

En el ejemplo anterior, me gustaría que la variable divClass una clase dinámica inner y el color para generar un estilo dinámico red . ¿Es posible?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

A partir de agosto de 2021, no es posible hacerlo directamente. Sin embargo, hay dos posibles soluciones (mencionadas en este número , en el repositorio Alpine.js).

la manera hacky

Hay un truco simple que puede usar para lograr lo que desea, simplemente necesita envolver los valores de los atributos en acentos graves :

 <div x-data="{ divClass: 'inner', color: 'red' }"> <div :class="`${divClass}`" :style="`background-color: ${color}`"></div> </div>

las bibliotecas

Hay dos bibliotecas que ayudan a envolver clases/estilos dinámicos en un código atractivo. Son nombres de clase y nombres de estilo. Con ellos a bordo, el código podría verse así:

 <div x-data="{ divClass: 'inner', color: 'red' }"> <div :class="classNames( divClass )" :style="styleNames({ backgroundColor: color })"></div> </div>
Un descargo de responsabilidad sesgado

En mi opinión, la primera solución es mejor ya que ahorra valiosos kB al no agregar dependencias adicionales. Sin embargo, debe tener en cuenta que es un poco menos legible y potencialmente confuso para otros desarrolladores.

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