在AngularJS中使用三元运算符内的过滤器

时间:2013-06-15 05:18:39

标签: javascript angularjs ternary-operator

是否有一种方法可以将过滤器应用于模板中的变量,当它是三元运算的一部分时?

<img ng-src="{{ image_url && image_url|filter:"foo" || other_url }}">

在这种情况下,过滤器是一个自定义过滤器,但我不想修改它来处理三元操作(因为过滤器可能根据它的使用位置而不同,我不想重新实现该逻辑a一堆次。)

1 个答案:

答案 0 :(得分:9)

Liviu T.在大多数情况下可能是正确的:你想在范围内创建一个函数,在这种情况下为你返回正确的数据。

那就是说,你可以通过将过滤后的表达式包装在parens中来实现:

image_url && (image_url | filter:"foo") || other_url

Fiddle