javascript代码中的EJS标记
我使用Node.js和ejs作为模板语言 我觉得这真的很愚蠢,我应该能够解决它,但我被卡住了 我在以下功能方面遇到问题:javascript代码中的EJS标记,javascript,jquery,node.js,ejs,Javascript,Jquery,Node.js,Ejs,我使用Node.js和ejs作为模板语言 我觉得这真的很愚蠢,我应该能够解决它,但我被卡住了 我在以下功能方面遇到问题: // Returns true if campground has been posted by currently logged on user // If no user logged on, returns false function checkIfCampgroundBelongsToUser(campgroundAuthorID) { var curren
// Returns true if campground has been posted by currently logged on user
// If no user logged on, returns false
function checkIfCampgroundBelongsToUser(campgroundAuthorID) {
var currentUser = <%-JSON.stringify(currentUser) %>
if(currentUser && currentUser._id === campgroundAuthorID) {
return true;
}
return false;
}
//如果营地已由当前登录的用户发布,则返回true
//如果没有用户登录,则返回false
功能检查IfCampGroundBelongsToUser(campgroundAuthorID){
var currentUser=
如果(currentUser&¤tUser.\u id==campgroundAuthorID){
返回true;
}
返回false;
}
当用户登录时,此代码工作正常。但是,当没有用户登录时,计算结果为空。不是空字符串。不为空。不是未定义的。只是空的。因此,我得到以下错误
未捕获的SyntaxError:如果
当我通过chrome开发工具进行检查时,我看到的就是这个
(是的,我意识到一个分号丢失了,我添加了它…当我添加分号时,我得到了未捕获的语法错误:意外的标记;)
未定义的
将通过JSON。stringify
将保持不变,而EJS将把它呈现为空。如果将其默认为null
,它将转换为字符串“null”
,EJS将其呈现为null
var currentUser = <%- JSON.stringify(currentUser || null) %>;
var currentUser=;
您可以试试->