Utilisation du moteur de modèle JADE, je souhaite que la possibilité de déclarer éventuellement des classes aux balises de carrosserie, dans des modèles qui s'étendent un autre.
layout.jade p> index. jade p> ceci ne fonctionne pas. p> p>
3 Réponses :
OK, l'instruction CODE> Block Corps CODE> est juste un bloc avec le nom du nom, donc dans votre présentation, vous n'avez pas de body code> BUCLE code> inclus, il doit être ajouté dans index.jade (que vous essayez de faire). Cependant, dans votre index.jade, vous remplacez em> le contenu du bloc avec seulement le corps.index (qui, je suppose - depuis que je ne suis pas sur mon ordinateur de développement et que je ne peux pas l'essayer maintenant - Renders ok mais sort tout le contenu, vous vous retrouvez avec juste un corps vide, bien qu'il puisse avoir l'attribut Class = 'Index'). Ce que vous pourriez essayer est ceci (dans index.jade): P > mais je ne suis pas sûr si le reste de votre mise en page.Jade (div # wrap) rendra correctement sous le corps (j'en doute). P> Que Je recommanderais, si c'est vraiment une question d'ajouter une classe conditionnelle sur le corps, est une chose comme celle-ci dans layouche.jade (au lieu de corps de bloc): p> où MyClassLocalvar est spécifié dans votre appel .Render ( res.Render ('index', {myClassLocalvar: 'theclass'}); code>). MyClassLocalvar peut même être un tableau et Jade attribuera toutes les classes de la matrice à votre corps. p> p>
Vous avez raison, en utilisant "Block Prepend Body ... corps.index", la teneur corporelle ne rend pas la façon dont je le veux, mais votre solution fait. Merci beaucoup!
Jade prend en charge Ruby comme une interprétation de chaîne
Celui-ci fonctionne bien si vous rendant les fichiers statiques de la ligne de commande (par exemple avec GRUNT) et ne peuvent pas passer facilement dans les variables de manière dynamique.
Pourquoi ne mettriez-vous pas le CODE> - VAR BODYCLASCLASC CODE> à l'intérieur du bloc Block vars code> dans le premier bit, hors d'intérêt?
De mon côté, je devais définir la bodyclass comme Corps (Classe = Bodyclass) Code> pour le faire fonctionner.
Vous pouvez manipuler des variables dans la portée des parents. Cette solution est donc aussi possible:
extends layout block beforeBody - bodyClasses.push('my-page') block content p Hello World!
Pouvez-vous poster un exemple de code plus complet de ce que vous avez essayé et n'a pas fonctionné? Utilisez-vous une instruction "étendue mise en page" dans votre index.jade? Cela aiderait à voir les fichiers .JADE. Et juste un indice "Syntaxe Sugar", vous pouvez utiliser Body.index au lieu de (Class = 'Index').
Oui, merci. Est-ce mieux? Le héritage des gabarits fonctionne, c'est juste comment donner une classe à l'étiquette du corps, que j'essaie de comprendre.