Pregunta

Estoy tratando de crear una vista que solo alberga bloques HTML reutilizables que puedan ser utilizados por otras vistas.Quería saber si algo así es posible:

en Views.home.common.scala.html:

@component1 = {
  some common html
}
@component2 = {
  some other stuff
}

en vistas. Home.sample.scala.html:

@(user:User)
import home._

@component1
@common.component2

No he tenido suerte hasta ahora y no veo nada similar en las muestras, pero la idea está cubierta en la plantilla casos de uso común .

¿Fue útil?

Solución

Estaba teniendo este mismo problema.Lo que hice estaba definiendo para cada bloque común un archivo y luego importar el paquete que contiene todos esos archivos.

Por ejemplo:

en vistas.common.component1.scala.html:

<div>
    Common component 1
</div>

en vistas.common.component2.scala.html:

<div>
    Common component 2
</div>

en vistas.main.scala.html:

@(content: Html)

@import common._

<!DOCTYPE html>
<html>
    <head></head>
    <body>
        @component1()
        @component2()
    </body>
</html>

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top