使用Meteor中的事件从数组中检索元素

时间:2017-11-03 09:31:51

标签: javascript meteor dom-events

我得到[对象,对象]而不是数组中的元素'类别'功能。虽然我不确定,也许这是预期的,我只是弄错了。

if (Meteor.isClient) {

    Template.ipsosboard.helpers({
         'categories': function() {
        return array; // Some data stored as JS Object in lib.
    },
        'currentElement': function() {
            return Session.get('selectedEvent');
        }
    });

    Template.ipsosboard.events({
        "change #category-select": function(event, template) {
            var selectedEvent = $(event.currentTarget).val();
            Session.set('selectedEvent', selectedEvent);
            console.log("EventNum: " + selectedEvent);
        }
    });

}; //end of client code.

if (Meteor.isServer) {
    //code to run by server here.
};

1 个答案:

答案 0 :(得分:1)

这似乎解决了这个问题。它需要将对象转换为数组。注意:'data'是一个json文件,存储为项目的lib文件夹中的JS对象,因此我需要将其转换。

if (Meteor.isClient) {

    Template.ipsosboard.helpers({
         'categories': function() {
  

需要使用以下函数将其转换为数组。

        var myObj = data;
        var array = $.map(myObj, function(value, index) {
            return value;
        });
        return array;
    },
  

所以现在它根据需要返回数据。

        'currentElement': function() {
            return Session.get('selectedEvent');
        }
    });

    Template.ipsosboard.events({
        "change #category-select": function(event, template) {
            var selectedEvent = $(event.currentTarget).val();
            Session.set('selectedEvent', selectedEvent);
            console.log("EventNum: " + selectedEvent);
        }
    });

}; //end of client code.

if (Meteor.isServer) {
    //code to run by server here.
};