Jade: forma de agregar inclusiones dinámicas
Pregunta
Me gustaría hacer algo como lo siguiente dentro de una plantilla de jade.
include page-content/#{view.template}
Como esto no funcionará, terminé con.
-if(view.path==="/")
include ../page_content/home
-else if(view.path==="/login/")
include ../page_content/login
-else if(view.path==="/join/")
include ../page_content/join
-else if(view.path==="/user/")
include ../page_content/user
ad nauseum
Le pregunté a TJ si era posible, respondió
Desafortunadamente no, se incluyen en tiempo de compilación, lo cual es algo necesario por algunas razones técnicas en las que no entraré, pero es posible que eventualmente necesitemos agregar una alternativa dinámica
Me pregunto si a alguien se le ha ocurrido alguna alternativa, por ejemplo, utilizando los asistentes de visualización.
Estoy atascado con un archivo de configuración grande para generar las vistas, y las declaraciones if-else en la plantilla, sé que volverán y me perseguirán.:)
Si esto es posible usando otro motor, como ejs o bigote, me encantaría saberlo.
Cualquier idea muy apreciada.
Solución
Me parece que es demasiado lógico en la vista.Parece que la mejor manera de hacerlo sería a través de un dynamicHelper o posiblementeun mixin