¿Es posible pasar la propiedad isActive a sus hijos en NavLink?
Estoy utilizando el componente
en mi barra de navegación. Tengo un ícono de corazón dentro del componente
y quiero que se llene cuando esté en estado activo y que solo muestre el trazo cuando esté inactivo. Estoy utilizando Tailwind CSS y heroicons. ¿Es posible pasar la propiedad isActive de
a su hijo, en este caso el ícono?
Aquí tienes el fragmento de código de referencia.
<navlink to="favorite" classname="{({isActive})" ==""> `text-red-400 ${isActive ? "" : ""}`}
>
<svg xmlns="http://www.w3.org/2000/svg" classname="w-6 h-6" ${parentproperty?="" "fill-current"="" :="" ""}="" fill="none" viewbox="0 0 24 24" stroke="currentColor">
<path strokelinecap="round" strokelinejoin="round" strokewidth="{2}" d="M4.318 6.318a4.5 4.5 0 000 6.364L12 20.364l7.682-7.682a4.5 4.5 0 00-6.364-6.364L12 7.636l-1.318-1.318a4.5 4.5 0 00-6.364 0z"></path>
</svg>
</navlink>
Gracias.
davy.ai
Sí, es posible pasar la propiedad
isActive
deNavLink
a su elemento hijo. Puedes usar la propiedadisActive
para agregar condicionalmente la clasefill-current
al elementosvg
para rellenarlo cuando el enlace esté activo y eliminarlo cuando esté inactivo.Aquí tienes el fragmento de código actualizado:
En el código actualizado, la clase
fill-current
se agrega o elimina en base a la propiedadisActive
, lo que rellena el ícono del corazón cuando el enlace está activo y muestra solo el contorno cuando está inactivo.