更改另一个指令angularjs

时间:2014-08-08 05:59:30

标签: javascript angularjs

我有两个指令来格式化元素的文本。

 app.directive("kilometersText", function(){
     // writes number as kilometer
 })

 app.directive("metersText", function(){
     // writes number as meter
 })

HTML:

 <ul> 
     <li ng-repeat="item in data"> 
         <span kilometers-text="item.length"></span> 
     </li>
 </ul>

我有两个按钮可将视图更改为米或公里。

<button type="button"> meter </button>
<button type="button"> kilometer </button>

如何使用这些按钮更改指令?

1 个答案:

答案 0 :(得分:0)

我建议使用两个跨度,而不是更改属性,一个用于显示KM,另一个用于米。然后根据所选视图有条件地隐藏它们。

<ul> 
     <li ng-repeat="item in data"> 
         <span ng-show="item.view == 'kilometer'" kilometers-text="item.length"></span> 
         <span ng-show="item.view == 'meter'" kilometers-text="item.length"></span> 
     </li>
 </ul>