我想从meteor中的数据库中获取问题。我是meteor.js的新手,并不知道如何去做。
Template.quiz.helpers({
//add you helpers here
'questionList': function () {
return Questions.find({},{limit: 1}).fetch();
}
});
Template.quiz.events({
'click .next': function (evt) {
evt.preventDefault();
}
});
分贝
{
"_id": "kAKbfLRHFZinrrRZv",
"selected_subject": "English",
"question": "ekek",
"ans_A": "e",
"ans_B": "q",
"ans_C": "t",
"ans_D": "o",
"correctAns": "e"
}
答案 0 :(得分:1)
你可以这样做 -
在渲染测验模板时设置会话变量questionNumber
。您将使用此会话变量的值,使用Questions.find()
语句中的skip选项从一个问题移动到另一个问题。根据用户是否单击下一个或上一个按钮,分别增加或减少存储在此会话变量中的值。
Template.quiz.onRendered(function () {
Session.setDefault("questionNumber", 0);
});
Template.quiz.helpers({
'questionList': function () {
return Questions.find({}, { skip: Session.get("questionNumber"), limit: 1 });
}
});
Template.quiz.events({
'click .next': function (event) {
event.preventDefault();
Session.set("questionNumber", Session.get("questionNumber") + 1);
},
'click .previous': function (event) {
event.preventDefault();
Session.set("questionNumber", Session.get("questionNumber") - 1);
}
});