I have tried the following (in a template loaded by a directive):
<li ng-repeat="lang in languages | filter: { Culture: '!{{currentLanguage}}'}">
this is not working, all languages are rendered
<li ng-repeat="lang in languages | filter: { Culture: !currentLanguage}">
this is not working, no languages are rendered
languages has a property 'Culture'. The currentLanguage
(in scope) resolves to 'en-CA' (I can see this bound when I view the element in Chrome dev tools). I would expect all languages except for 'en-CA' to be returned. Is this possible without creating a custom filter?
AngularJS filters accept an expression, whereas you are supplying an interpolated value
Try changing to the following...
See the AngularJS filter docs for more information
If you need some custom code to resolve this, a more involved solution may include...
JSFiddle Link - working example