Question

J'essaie de créer une vue qui n'héberge que des blocs HTML réutilisables pouvant être utilisés par d'autres vues.Voulait savoir si quelque chose comme ça est possible:

in vues.Home.common.scala.html:

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

in vues.home.sample.scala.html:

@(user:User)
import home._

@component1
@common.component2

Je n'ai pas eu de chance jusqu'à présent et je ne vois rien de même dans les échantillons, mais l'idée est couverte dans le Cas d'utilisation courante de modèle .

Était-ce utile?

La solution

J'avais le même problème.Ce que j'ai fait était défini pour chaque bloc commun de fichier, puis importer le package contenant tous ces fichiers.

Par exemple:

dans vues.common.component1.scala.html:

<div>
    Common component 1
</div>

dans vues.common.component2.scala.html:

<div>
    Common component 2
</div>

dans vues.main.scala.html:

@(content: Html)

@import common._

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top