À l'aide de Jade Modèles (jade-lang.com) côté client
Je voudrais utiliser Jade modèles de client-côté. De préférence, généré à l'aide des Rails 3.1 asset pipeline. Je ne peux vraiment pas comprendre comment le faire.
Quelqu'un qui ai suis tombé sur le même problème et trouvé une solution? Toutes les pensées sont beaucoup apprécié.
Vous devez vous connecter pour publier un commentaire.
P. S: Probablement maintenant Substack réponse est mieux.
browserify
Peut-être que vous pouvez utiliser https://github.com/substack/node-browserify
Navigateur
http://jsperf.com/dom-vs-innerhtml-based-templating/53 => Le rendement n'est pas terrible selon cette référence => http://gist.github.com/raw/550723/12d176698628e30a1df398c7ac7aea93924e1294/jade.js. Mais selon les TJ, il n'a jamais été censé être utilisé dans le navigateur, mais node.js au lieu de cela. Dans ce cas, il va être assez rapide. Il ya beaucoup de solutions de rechange que vous pouvez utiliser dans le navigateur au lieu.
Si vous utilisez browserify vous pouvez utiliser à portée de main ce jade middleware: jadeify.
Ensuite, vous pouvez simplement appeler
jadeify("foo.jade", { x : 4, y : 5 })
côté navigateur après pointant vers un répertoire de vues au middleware et vous obtenez en retour un jquery poignée.Caisse Lame. C'est un Jade-comme le HTML moteur de template qui est conçu pour le client-côté (côté serveur) d'utilisation. Il y a quelques autres fonctionnalités que vous les gars pourrait, comme, en tant que bien.
EDIT: Mais, seulement pour Node.js les serveurs. Il n'y a pas de Ruby mise en œuvre à cette époque.
Cette fonctionnalité est désormais disponible en Jade.
http://jade-lang.com/api/
De leur API Documentations:
Vous devriez passer l'compilé fonction javascript pour le client, par exemple en écrivant la fonction (fn dans l'exemple) pour une .fichier js et ensuite l'inclure .fichier js dans le fichier html avec la balise script.
Une autre option est d'utiliser templatizer, qui est une compilation de jade pour une .fichier js pour vous.
J'ai écrit un joyau appelé tilt-jade pour ce faire au sein de l'asset pipeline. Il est fait pour travailler exactement comme EJS fait avec les pignons, par défaut, il rend Jade modèles vers le bas dans les fonctions de sorte qu'ils peuvent être appelés côté client. Je ne suis pas sûr que c'est une excellente solution, mais il a travaillé bien pour mes besoins.
Je viens de faire une bibliothèque pour la fabrication de jade disponible en html côté client. C'est aussi simple que < jade>...< /jade>. Check it out: https://github.com/charlieamer/jade-query
Jade prend désormais en charge la compilation pour le client, par défaut, utilisez le
-c --client
option. Voir http://jade-lang.com/command-line.Voici un hacky mais version simple, pour
browserify
à l'aide degulp-jade
.Ensuite dans mon fichier JS côté client...
De sorte que vous ne envoyer au client des modèles spécifiques dont vous avez besoin et browserify vous permet d'avoir une seule copie de l'exécution.