如何使用ng上的筛选器-选项来更改显示的值?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (16)

ng-options像这样

<select ng-model="create_price" ng-options="obj for obj in prices"/>

提问于
用户回答回答于

app.filter('price', function() {
  return function(num) {
    return num === 0 ? 'free' : num + '$';
  };
});

然后像这样使用它:

<select ng-model="create_price" ng-options="obj as (obj | price) for obj in prices">
</select>

如果需要,也可以在代码中直接使用筛选器:

var formattedPrice = $filter('price')(num);
用户回答回答于

希望创建自定义筛选器,如:

app.filter('price', function() {
  return function(arr) {
    return arr.map(function(num){
      return num === 0 ? 'free' : num + '$';
    });
  };
});

如:

<select ng-model="create_price" ng-options="obj for obj in prices | price">
  {{ obj }}
</select>

扫码关注云+社区