Comment charger différents partiels dynamiquement en utilisant des modèles de guidons?
Je suis le chargement d'un modèle avec les données suivantes:
"slides": [
{
"template": "video",
"data": {
"video": ""
}
},
{
"template": "image",
"data": {
"image": ""
}
}
]
dans mon template je veux faire une boucle sur ces diapositives et selon la configuration de modèle je veux charger une partielle
{{#each slides}}
{{> resources_templates_overlay_video }}
{{/each}}
Comment puis-je faire de cette charge partielle de manière dynamique (selon la configuration de modèle)?
Je suis en utilisant le nécessitent-guidon-plugin
source d'informationauteur Daan Poron
Vous devez vous connecter pour publier un commentaire.
Aussi loin que je peux dire, hbs attend les partiels à être connu au moment de la compilation, ce qui est une façon avant de vous passer de vos données. Nous allons travailler autour de cela.
D'abord, tirez dans votre dynamique partiels avant le rendu, quelque chose comme:
Et de définir un assistant, qui va agir comme une dynamique partielle
Enfin, modifier votre template principal pour ressembler à
Quand
Handlebars.partials[]
renvoie une chaîne brute cela signifie que le partiel n'est pas compilé.Je ne suis pas sûr mais je crois qu'Guidon compile partielle en interne lorsqu'il compile le modèle qui comprend l'partielle. Ainsi, lorsque vous utilisez une aide pour comprendre une partielle alors Guidon ne le reconnait pas et il ne sera pas compilé.
Vous pouvez compiler partielle de vous-même. N'oubliez pas d'enregistrer la compilation partielle ou vous vous retrouvez la compilation de tous les temps partiel est nécessaire, ce qui affecte les performances. Quelque chose comme cela devrait fonctionner.
J'ai trouvé les réponses ci-dessus, un peu difficile à comprendre - ils la fuite globals, ont caractère unique des variables, et de drôles de nommage. Voici donc ma propre réponse, pour mon (et votre) référence:
Une dynamique partielle à l'aide de "ebm", express.js par défaut guidon de la mise en œuvre:
J'ai utilisé ce faire un simple blog de prise de
(article-name).md
en/blog/(article-name)
la création d'une dynamique partielle:Voici l'itinéraire. Il d'une erreur 404 si le partiel n'existe pas, parce que le blog n'existe pas.
/views/blog.hbs
ressemble: