如何使用 Meteor / 空格键预选多个选项

How to preselect multiple option with Meteor / spacebar

有我想要的:

用户会说语言 3 和 2。

<select multiple>
  <option>language 1</option>
  <option selected>language 2</option>
  <option selected>language 3</option>
</select>

为此,我有:

<select multiple>
  {{#each isoLangs}}
  <option>{{isoLang}}</option>
  {{/each}}
</select>

Template.profile.helpers({
  isoLangs: function(){
    return [[...]]; // each line of the array is like this : {tag: aTag, name: aName} 
  },
  isoLang: function(){
    return this.name;
  }
});

而且,在会话值中,我有一个标签数组,其中包含口语标签。

知道我的数组 isoLangs 与特定用户没有直接关系,我如何 link 有效地 link 添加 "selected" 选项的那些数据?

谢谢

您可以使用 _.map (docs):

isoLangs: function(){

    var selectedname = this.name;

    return _.map([....], function(doc) {
        if(selectedName == doc.name) doc.selected = true;            
        return doc;
    }
}

你的html:

<select multiple>
   {{#each isoLangs}}
       {{#if selected}}       
           <option selected>{{name}}</option>
       {{else}}
           <option>{{name}}</option>
       {{/if}}
   {{/each}}
</select>