Is there a method for applying a filter to a variable in the template when it is part of a ternary operation?
<img ng-src="{{ image_url && image_url|filter:"foo" || other_url }}">
In this case the filter is a custom filter, but one that I don't want to modify to handle the ternary operation (because the filter maybe different depending on where it's used and I don't want to reimplement that logic a bunch of times).
Is there a method for applying a filter to a variable in the template when it is part of a ternary operation?
<img ng-src="{{ image_url && image_url|filter:"foo" || other_url }}">
In this case the filter is a custom filter, but one that I don't want to modify to handle the ternary operation (because the filter maybe different depending on where it's used and I don't want to reimplement that logic a bunch of times).
Share Improve this question asked Jun 15, 2013 at 5:18 kylederkyleder 6671 gold badge8 silver badges18 bronze badges 1- 3 To me this looks too plex to be inline. I would create a function that will return the src based on whatever logic you need it to do. – Liviu T. Commented Jun 15, 2013 at 11:21
1 Answer
Reset to default 9Liviu T. is probably right in most cases: you'd want to create a function on the scope that returns the right data for you in this case.
That said, you can get by by wrapping the filtered expression in parens:
image_url && (image_url | filter:"foo") || other_url
Fiddle