2017-06-22 7 views
0

Iはejsテンプレートをしたとして:nodej EJS条件変数宣言

<div id="id1"> 
do something 
</div> 
<div id="id2"> 
do something 
</div> 

idの値は、バックエンドnode.jsコードから決定されます。したがって、idの値は、バックエンドからレンダリングされる特定の変数の異なる値とは異なります。

<% if(backendvalue== "F"){ %> 
    var id1 = "F"; 
    var id2 = "A"; 


<% } else if (backendvalue == "N") { %> 
    var id1 = "N"; 
    var id2 = "B"; 

<% } %> 

、上記のように宣言された変数を使用します:私はとしてif-elseケースを使用しようとしている

<div id="<%= id1%>"> 
    do something 
</div> 
<div id="<%= id2%>"> 
    do something 
</div> 

しかし、私は定義されていないエラーid1として取得しています。私は4つのそのような変数と3つの異なる条件とそれらの変数に依存するhtmlコードをたくさん持っているので、私はこの問題だけの方法がありますか?

答えて

0

割り当てのプロセスは、バックエンドから渡される変数を使用する方法とほぼ同じです。 V1の値が今をvalue1であり、以下のようにEJS内の任意の場所で使用することができます

<% v1= "value1"%> 

<%= v1%> 
あなただけのよう =記号を削除する必要があります
0

エラーは、範囲がif {}に制限されているため意味があります。

varを削除すると、グローバルになります。

<% if(backendvalue== "F"){ %> 
    id1 = "F"; 
    id2 = "A"; 


<% } else if (backendvalue == "N") { %> 
    id1 = "N"; 
    id2 = "B"; 

<% } %>