【发布时间】:2019-01-06 11:23:26
【问题描述】:
这是我的 js 代码:
Template.listModules.helpers({
'item' : function() {
var currentUser = Meteor.userId();
var stuff = Events.find(
{
createdBy: currentUser,
startDate: { $gte: new Date() }
}, {sort: {module:1, startDate:1}}).fetch();
var displayArray = testing();
return displayArray;
},
});
function testing(){
var currentUser = Meteor.userId();
var array = Events.find(
{
createdBy: currentUser,
startDate: { $gte: new Date() }
}, {sort: {module:1, startDate:1}}).fetch();
var finalArr = [];
var currentArr = [];
currentArr.push(array[0]);
for (var i = 1; i < array.length; i++) {
if(array[i].module == array[i-1].module){
currentArr.push(array[i])
} else {
finalArr.push(currentArr);
currentArr=[];
currentArr.push(array[i]);
}
if(i+1 == array.length){
finalArr.push(currentArr);
}
};
console.log(finalArr);
return finalArr;
}
这是我当前的 HTML 代码:
<template name="listModules">
<h2>List of Modules</h2>
<ul>
{{#each item}}
<li>{{module}}</li>
{{/each}}
</ul>
</template>
![这是我当前的 finalArr]https://ibb.co/jAyWDo
例如,我如何在前端、html 端显示模块字符串。我在网上读到,有些人设法通过为数组提供一个 id 并将其设置为 {{#each id}} 来做到这一点,但我不太确定如何在这里为数组提供一个 id。
我的目标是做 2 个循环,这样我就可以将 3 个数组分成 3 个文本框,并将它们的内容显示在单独的框中。
【问题讨论】:
标签: javascript html arrays meteor spacebars