2016-10-23 2 views
0

У меня есть компонент меню, которому я пропускаю метки. Существует ли какой-либо (угловой) способ привязки разных функций к каждой метке?Угловой проход несколько функций через массив

HTML:

<menu elements="['home','shop','buy']"></menu> 
<-- menu component --> 
<ul> 
<li ng-repeat="el in $ctrl.elements" ng-click="$ctrl.setActive($event)"> 
</li> 
</ul> 

JS:

app.component('menu', { 
bindings: { 
    elements: '=' 
} 

controller: function() { 
this.setActive = (evt) => { 
    console.log('clicking li'); 
} 
} 

}

+0

вы можете пройти каждый название ярлыка в качестве параметра для удовольствия и обрабатывать его оттуда – Akis

ответ

0

Вы можете использовать ту же самую функцию и обрабатывать каждую этикетку по-разному:

<li ng-repeat="el in $ctrl.elements" ng-click="$ctrl.setActive(el)"> 

this.setActive = (label) => { 
    console.log('clicking ' + label); 
    if (label == 'home') { 
    //do something 
    } 

    if (label == 'shop') { 
    //do something else 
    } 
} 
Смежные вопросы