2013-02-25 2 views
0

bonjour im utilisant jade avec nodejs et exprimer pour faire des pages web, dans ce cas je veux utiliser l'instruction if pour créer un corps avec différents styles ...en utilisant sinon dans jadejs pour créer une couleur de corps ou une image de fond

ici est le code

-if(image && image.length) 
    body(style="background-image:url(#{image})") 
-if(color && color.length) 
    body(style="background-color:#{color}") 


    h2 hello world 

si le fond existe l'image d'arrière-plan l'utilisation

si la couleur existe utiliser un background-color

mais le problème est w image poule existe dans le monde de bonjour ou tout le code indenté sur le travail ne marche pas du corps, si je mets la couleur en image lorsque la couleur existe le reste du code est vide ...

Comment puis-je résoudre ce

EDIT 2 :

im patcher ce problème en utilisant inclure dans les déclarations

-if(image && image.length) 
    body(style="background-image:url(#{image})") 
    include restofcode 
-if(color && color.length) 
    body(style="background-color:#{color}") 
    include restofcode 

restofcode.jade

h2 hello world 

et tout fonctionne très bien

Répondre

3

Essayez plutôt de ne pas pouvoir indenter correctement:

- var myStyle = '' 
- if(image && image.length) 
    - myStyle += "background-image:url(" + image + ");"; 
- if(color && color.length) 
    - myStyle += "background-color:" + color + ";"; 
body(style=myStyle) 
    h2 Hello World 
+0

réservoir mal try ok vous – andrescabana86

+0

Nope ... ne fonctionne pas, même si la couleur est nulle, le style de carrosserie = "background-color: null", mais quand j'efface si l'énoncé de couleur le corps prend la valeur de l'image et du style de corps = "background-image: url (/images/uno.jpg); – andrescabana86

Questions connexes