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

Javascript 使用Meteor中的事件从数组中检索元素,javascript,meteor,dom-events,Javascript,Meteor,Dom Events,我从“categories”函数中的数组中获取[object,object]元素。虽然我不确定,但也许这是意料之中的,我只是弄错了 if (Meteor.isClient) { Template.ipsosboard.helpers({ 'categories': function() { return array; // Some data stored as JS Object in lib. }, 'currentElem

我从“categories”函数中的数组中获取[object,object]元素。虽然我不确定,但也许这是意料之中的,我只是弄错了

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.
};

这似乎可以解决问题。它需要将对象转换为数组。注意:“数据”是一个json文件,作为JS对象存储在项目的lib文件夹中,因此我需要转换它

if (Meteor.isClient) {

    Template.ipsosboard.helpers({
         'categories': function() {
需要使用下面的函数将其转换为数组

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


你试过用vanillajs获得价值吗?例如,
事件.currentTarget.value
?这闻起来像是jqueryI的怪事我搞错了。它通常返回一个对象,因为该文件是一个JS对象,包含我试图获取的数据。见下面的答案。
        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.
};