2016-10-02 2 views
1

Я пытаюсь создать выпадающий список подклассов <select>, чтобы создать фильтр. Когда создается список, я получаю дубликаты и строки. Как разделить строки, а затем удалить дубликаты?Удалить дубликаты из выпадающего списка

Пример - Это то, что я тока получить

<select data-filter="" class="form-control" name="subClassifications"> 
    <option value="all">Select sub-classification</option> 
     <option value="Audit">Audit</option> 
     <option value="Assurance,Accounting,Audit">Assurance,Accounting,Audit</option> 
</select> 

Путь: helper.js

subClassificationsFilter() { 
    let subClassifications = ProfessionalOverview.find({}, { fields: { subclassification: 1 } }); 

    if (subClassifications) { 
    return _.uniq(subClassifications.map((subClassification) => { 
     return subClassification.subclassification; 
    }), true); 
    } 
}, 
+0

То, что я перечислил выше, плюс, я попытался добавить такие вещи, как '.split variables', однако это похоже на создание массивов. Я немного озадачен тем, как я группирую все субклассификации вместе, разбивая их, а затем удаляю дубликаты. – bp123

ответ

0
subClassificationsFilter() { 
     let subClassifications = ProfessionalOverview.find({}, { fields: { subclassification: 1 } }).fetch(); 
     let subClassification = _.map(subClassifications, function(obj) { 
      return obj.subclassification; 
     }); 

     let groupSubClassification = _.flatten(subClassification); 

     return _.uniq(groupSubClassification).sort(); 
    } 
3

Создание списка для удаления дубликатов

unorderedList = Object.keys(myObject).map(function(key){ 
    return {label: key, value: myObject[key]} 
}); 

Затем заказать неупорядоченный список

const orderedList = {}; 
Object.keys(unorderedList).sort().forEach(function(key) { 
    orderedList[key] = unorderedList[key]; 
}); 

Используйте упорядоченный список, чтобы создать раскрывающееся меню.

+0

Поблагодарите Бруно, это сработало бы хорошо, но я мог использовать вместо этого подчеркивание. Спасибо за кучи за ваше предложение. – bp123