2015-11-11 3 views
0

Любой лучший способ написать это? Я просто не хочу повторять внутреннее содержимое списка дважды.ng-переключатель для размещения элементов

<div ng-switch on="list.type"> 
    <ul ng-switch-when="unorder"> 
    <li ng-repeat="item in items"> 
      {{ item.text }} 
    </li> 
    </ul ng-switch-when="unorder"> 
    <ol ng-switch-when="order"> 
     <li ng-repeat="item in items"> 
      {{ item.text }} 
     </li> 
    </ol ng-switch-when="order"> 
</div> 

ответ

1

Я думаю, что это более удобный способ с помощью CSS вместо того, чтобы использовать пользовательскую директиву для чего-то довольно простого

Html

<ol ng-class="{'no-style' : list.type === 'unorder'}"> 
    <li ng-repeat="item in items"> 
     {{ item.text }} 
    </li> 
</ol> 

CSS

ol.no-style { 
    list-style-type: none; 
} 

Живой пример, который вы можете увидеть here

+0

путь, мне это нравится – andresmijares25

0
<div> 
    <list content="list.type"> 
    <li ng-repeat="item in items"> 
     {{ item.text }} 
    </li> 
    </list> 
</div> 

С привязкой данными вы можете изменить шаблон директивы списка для <ul ng-transclude> или <ol ng-transclude>