我正在从mongodb获取数据并以res.render('user', {data: result})
的形式发送。
现在,在 ejs 端,我正在获取此数据字段是一个JSON对象,其中包含名称,电子邮件,密码等字段和出席人数数组。像这样的结果:
{
name:"Joe",
password:"jdsj",
attendance:[
entry: Date,
late: true/false
]
}
现在,当我像这样循环遍历此数组时:
<% var counter = 0 %>
<% for( var i = 0; i< data.attendance.length/2;
i+2{%>
<% if(data.attendance.length===0){%>
<% counter=0 %>
<% } else{ %>
<% counter++ %>
<% } %>
<% } %>`
当我在页面上获取它时,它没有呈现。如果没有 for 循环,则可以正常渲染,但可以循环而不渲染。
<li><%= data.name%></li>
<li><%= counter %></li>
...
答案 0 :(得分:0)
您应该像这样在循环内的li元素中添加数据
class Subject {
public:
Subject() = default;
Subject(Subject const&) = delete;
Subject(Subject&& other)
: state_{std::move(other.state_)},
move_callbacks_{std::move(other.move_callbacks_)} {
for (auto& callback : move_callbacks_) {
callback(this);
}
}
Subject& operator=(Subject const&) = delete;
Subject& operator=(Subject&& other) {
state_ = std::move(other.state_);
move_callbacks_ = std::move(other.move_callbacks_);
for (auto& callback : move_callbacks_) {
callback(this);
}
return *this;
}
~Subject() = default;
void doStuff() { state_->doStuff(); }
State* state_ = nullptr;
std::vector<std::function<void(Subject*)>> move_callbacks_;
};