EJS里判断一个变量是否可用

文章目录
  1. 1. 问题描述
  2. 2. 解决方法

改博客时候遇到的问题:ejs互相传参数,怎么得知参数有没有被传呢?

问题描述

node代码里存在两种情况:

1
2
res.render('home/content', { detail:detail,list:list } );
res.render('home/content', { detail:detail } );

EJS:

1
2
3
<%  if(list==undefined){ %>
<span>暂时没有内容</span>
<% } %>

当node里不提供list的时候,页面判断list是否存在的时候报错

1
2
3
4
5
6
7
8
ReferenceError: D:\demo\views\home\content.ejs:10
8| </div>
9| </div>
>> 10| <%
11| if(list==undefined){
12|
13| }
list is not defined

这时候怎么办?
难道必须在node里添加一个list为空的变量过来吗?还是有在EJS里有其他验证方法?

解决方法

1
2
3
if(locals.list==undefined){
...
}

用到EJS的locals就可以防止报错啦~

本文总阅读量

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×