angularjs – 使用ng-options上的过滤器更改显示的值

前端之家收集整理的这篇文章主要介绍了angularjs – 使用ng-options上的过滤器更改显示的值前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个价格数组(0,0.99,1.99 …等),我想显示在< select&gt ;. 我想使用Angular的ng选项,像这样
<select ng-model="create_price" ng-options="obj for obj in prices"/>

因为它显示在上面它会产生一个0,0.99,1.99 …的选择…

但是我想在代码中使用一个过滤器,每次出现“price”(或类似的东西)时,代码将运行一个函数将浮点数改为字符串和存在(free,0.99 $,1.99 $ …等)。

我有办法吗?

谢谢

有一个更好的方法
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);
原文链接:https://www.f2er.com/angularjs/146345.html

猜你在找的Angularjs相关文章