ejs怎么判断参数传进来了
发布于 8 年前 作者 starhiking 5478 次浏览 来自 问答

想判断ejs是否传进来了,然后进行某种dom操作,怎么写都报错,求解!

15 回复

if 呀! 就是原生js 操作啊 untitled1.png

@ilovedesert001 我没加_session.user就一直报错,这个该怎么用,我刚接触😲

@starhiking 你传入的什么对象,就用什么对象去判断啊,就是普通的javascript 用法

@ilovedesert001 <% if(!username) username =login; %> <%= username %>

我是这样写的,一直报错

@starhiking 把if后面的那对大括号加上试试,我之前好想也遇到过类似问题

@imhered 还是不行

55| <% if(!username){username=“login”} %> 56| <%= username %> 57| <% include footer %> 58|

username is not defined 你能看看你原来的代码吗

@starhiking 你这个username 在后端 render的时候有给 username 赋值吗?

@imhered 我就是想实现如果没有赋值的时候实现显示其他内容,我放在header.ejs里面,然后其他ejs文件调用

@starhiking 你赋不赋值没关系,但是你的声明这个变量啊,你有在后端声明这个变量吗? 看你报的错username is not defined 明显是没声明这个变量

@imhered @imhered 也就是后端必须声明,然后后端再考虑赋值问题,明白了

<%= (typeof username !== ‘undefined’ && username) ? username : ‘login’ %>

@WindTrace 你这种只是换了个写法,还是必须在render里面声明才行

@starhiking 我知道要声明,这样写法在你的username没数据的时候可以不用声明

@WindTrace 我刚刚试了一下,如果不申明,这种写法还是报错,不过不是之前的error

@starhiking 我刚刚试了一下没有报错,用的express+ejs,不知道你是怎么试验的

回到顶部