Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript nodej-ejs条件变量声明_Javascript_Node.js_Ejs - Fatal编程技术网

Javascript nodej-ejs条件变量声明

Javascript nodej-ejs条件变量声明,javascript,node.js,ejs,Javascript,Node.js,Ejs,我有一个ejs模板: <div id="id1"> do something </div> <div id="id2"> do something </div> 并将上述声明变量用作: <div id="<%= id1%>"> do something </div> <div id="<%= id2%>"> do something </div> 做点什么 做

我有一个
ejs
模板:

<div id="id1">
 do something
</div>
<div id="id2">
 do something
</div>
并将上述声明变量用作:

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

做点什么
做点什么

但我得到的错误是
id1
未定义。有没有办法解决这个问题,因为我有4个这样的变量和3个不同的条件,还有大量依赖于这些变量的html代码。

这个错误是有意义的,因为您的范围被限制在
if{}

只需删除
var
,它们就变成了全局变量

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


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

<% } %>

id1=“F”;
id2=“A”;
id1=“N”;
id2=“B”;

赋值过程几乎与使用从后端传递的变量的方式相似。您只需删除
=
符号,如下所示:

<% v1= "value1"%>

v1的值现在是value1,可以在ejs内的任何位置使用,如下所示:

<%= v1%>

<%= v1%>